home *** CD-ROM | disk | FTP | other *** search
/ START Magazine / START VOL 3 NO 8.st / SEURDOCS.ARC / SEURAT.DOC next >
Encoding:
Text File  |  1988-12-07  |  107.7 KB  |  2,089 lines

  1.  
  2. U S E R ' S    G U I D E   for   S E U R A T
  3. Copyright 1988, by S. K. Webb, SKWare One, Inc.
  4.  
  5.                        WHAT YOU NEED TO RUN SEURAT
  6.  
  7.     SEURAT requires the SEURAT.DAT file to run. It must be in the root
  8. directory of whatever disk it is on. The program disk may also contain
  9. whatever folders you wish, but folders may be placed on the data disk
  10. containing your images, or on a disk of their own. The first thing
  11. SEURAT does when it is loaded is to load in data from the SEURAT.DAT
  12. file. After this is accomplished and the main menu is displayed, the
  13. data file will not be needed again until the next time you load SEURAT.
  14. The disk may then be changed for a data disk for images.
  15.  
  16.     The other thing you need to do is to read this manual at least 
  17. once, however cursorily, before attempting to use SEURAT.  Please...
  18.  
  19. MAIN MENU 
  20.  
  21.     After data-loading is complete, SEURAT presents the user with the
  22. main menu from which all functions of the program are accessible. The
  23. currently selected image, or paint screen, is displayed by clicking the
  24. right mouse button or by pressing Escape. You may return to the main
  25. menu from the paint screen by the same means: clicking the right mouse
  26. button or by pressing the Escape (with certain exceptions noted below).
  27.  
  28.     In low resolution, the main menu displays fill the screen. In
  29. medium and high resolutions, these same buttons and options leave a
  30. considerable portion of the center of the menu screen available for a
  31. view window, configured much like the zoom screen view window, through
  32. which the currently active paint screen can be seen.
  33.  
  34.     Forty-six fill patterns are displayed around the border of the main
  35. menu. The currently active fill pattern is shown in the active fill
  36. selection display, which is located at the central left-hand edge of
  37. the screen.
  38.  
  39.     Immediately to the right of this active fill selection display is a
  40. stack of four buttons:  COLOR and MONO, which toggle the peripheral
  41. display of 46 fill patterns between the two fill types, the TEXT button
  42. and a button that calls a pop-out menu, which will appear over the
  43. brush selector boxes.
  44.  
  45.     Below the active fill display are the buttons for setting the WRITE
  46. MODE, and above it the buttons for selecting a paint function or
  47. operation.
  48.  
  49.     To the right of this block of buttons is a vertical column of
  50. buttons labeled A through H. These are the paint screen selector boxes.
  51.  
  52.     In the upper right-hand portion of the main menu is the palette
  53. display. The colors are arranged from the screen background color
  54. (color 0) at the upper-left to the writing color (color 15, or 3, or 1,
  55. depending on the resolution) at the lower-right.
  56.  
  57.     Just below the currently active palette is the FRE memory line, a
  58. continuously updated register showing the program's available free
  59. memory in decimal numbers.
  60.  
  61.     Below the FRE ledger line are three buttons controlling the INK,
  62. CLIP and AUTO functions. Beneath them, in the lower right-hand area of
  63. the main menu are the brush selector boxes.
  64.  
  65.     The current selection of functions and operations are shown by
  66. highlighting the buttons in the usual GEM manner. There should always
  67. be one paint function (or text) button, one currently selected write
  68. mode, one active brush selection, one active paint screen selection,
  69. and one fill type selection highlighted at all times.
  70.  
  71.     The actual relative placement of the buttons and features of the 
  72. main menu varies somewhat with the resolution in which the program is
  73. running. The low resolution screen is quite full, the medium less
  74. crowded, and the high resolution menu screen is rather sparsely
  75. settled.
  76.  
  77.     A detailed description of all features follows:
  78.  
  79.     VIEW WINDOW: The view window displays a 5:4 upright rectangle which
  80. reveals 25.1% of the paint screen. The view window can be scrolled up,
  81. down, left and right one pixel at a time by clicking on the directional
  82. arrows in the corner boxes of the view window border. (Note: The arrows
  83. refer to the direction of movement of the window, not the movement of
  84. image in the window.)
  85.  
  86.     The view window can also be shifted much more rapidly by dragging
  87. with the left mouse key on the vertical or horizontal sliders seen in
  88. the upper and left-hand portions of the view window's border. (Note:
  89. the sliders alone are not able to reach the last few pixels at the edge
  90. of the paint screen, but the arrows can shift the image to the very
  91. edge. In general, some "fine tuning" by the arrows is necessary for
  92. precision positioning.)
  93.  
  94.     The X and Y coordinates of the upper-left-hand corner of the 
  95. screen area which is currently displayed in the view window are shown
  96. in the lower border of the view window.
  97.  
  98.     CURSORS: SEURAT's cursor shapes are configured to provide the user
  99. with status information. The cursor configuration alters according to
  100. the routine in which the user is operating: the file cursor in file
  101. functions, the grid cursor in the grid color changing routine, the
  102. palette cursor in palette mode, etc. Specific cursor shapes are
  103. described in each appropriate section below.
  104.  
  105.     Additionally, there is a cursor that is "normal" in form but that
  106. contains the currently selected color.
  107.  
  108.     WRITE MODE: There are four write modes available for graphic
  109. operations on the ST. All user graphic operations except block placements
  110. are carried out in the user's currently selected write mode.
  111.  
  112.     The four modes are:
  113.  
  114.     1) OVERWRITE (which GEM calls replace), in which all new pixels
  115. replace any existing pixels that might be present at that screen
  116. location.
  117.  
  118.     2)  TRANSPARENT, in which all new pixels of color 1 or higher
  119. replace existing pixels, but new pixels of the screen background color
  120. (color 0) are treated as "transparent," allowing existing old pixels to
  121. "show through;" that is, they are not replaced.
  122.  
  123.     3) XOR (Exclusive Or), in which the new pixel is xor'ed with the
  124. existing pixel. The rule of the xor is: one or the other but not both.
  125. Or, 1 xor 1 = 0, 1 xor 0 =1, 0 xor 1 = 1, and 0 xor 0 = 0 (at least in 
  126. monochrome; the results are less predictable in color).
  127.  
  128.     (Note: xor behaves differently in block placements than in the
  129. other graphic operations, because of the distinction made between 0
  130. pixels that have been set to 0 and 0 pixels that have not been set; see
  131. below.) The chief usefulness of xor lies in the fact that a bit pattern
  132. xor'ed to the same place twice restores the original pattern of pixels
  133. present before the two operations.
  134.  
  135.     4) REVERSE TRANSPARENT, in which new set pixels which overlap old
  136. set pixels are unset (color 0) and unset pixels are transparent with
  137. regard to old set pixels. It is the "reverse" of the transparent mode.
  138.  
  139.     If the write modes sound confusing to the user, don't be too
  140. discouraged, because they are both confusing and confused! Complicating
  141. the picture is the that that GEM distinguishes between set and unset 
  142. pixels. That's no problem, unless you're talking about pixels of the
  143. screen background color (color 0). Oddly enough, the distinction
  144. between set and unset color 0 pixels is only observed in operations on
  145. blocks, where unset pixels are ignored, while in all other operations,
  146. all pixels of color 0, set and unset alike, are affected. I cannot say
  147. whether this is a pecularity of GFA BASIC or GEM itself.
  148.  
  149.     From a practical standpoint, the thing to do is play around with
  150. the effect of each write mode on the operations you perform, as it is
  151. often difficult to predict what the result will be. Experiment with the
  152. many combinations, as some startling effects are possible.
  153.  
  154.     The write mode may be set on the main menu by clicking on one of
  155. the four write mode selector buttons. Write mode may also be set or
  156. altered any number of times during a graphic operation (that is, while
  157. the paint screen is displayed) by pressing the 1, 2, 3 or 4 keys on the
  158. keyboard. (Keypresses are valid only while the paint screen is "up,"
  159. not from the main menu. Please note the single exception: the write
  160. mode cannot be changed by keypress while you are entering text, since
  161. keypresses in the text routine are routed to the text string, except
  162. for Escape and Backspace.)
  163.  
  164.     Selecting the TEXT operation or choosing BLOCK as the paint
  165. operation automatically toggles the write mode to transparent, the most
  166. usual choice for those operations. However, the write mode may be
  167. reset at any time. The write mode is not toggled back when another
  168. option besides block or text is selected; it must be reset by the user.
  169.  
  170.     BLOCK: The block function allows the user to "get" a piece of the
  171. paint screen and place it somewhere else on that paint screen or on 
  172. another paint screen. When you first toggle on the block function and
  173. go to the paint screen, the mouse will be replaced by a full screen
  174. cross-hair cursor.
  175.  
  176.     Placing the cursor center (where the two lines cross) and pressing
  177. and holding the left mouse button will mark the upper-left-hand corner
  178. of the block you are selecting. Still holding the left mouse button
  179. down, drag the mouse down and away (to the right) to where you want the
  180. lower-right-hand corner of the block to be. A box will be dragged
  181. around the block as you do so.
  182.  
  183.     When you release the left mouse button, a copy of that portion of
  184. the paint screen will be "cut out" as a block. In low and medium
  185. resolutions, the mouse will briefly reappear as the "busy bee" while
  186. the program unleaves the bit planes of the image and combines them to 
  187. construct a monoplane mask of the block. In high resolution this
  188. operation is unnecessary (since the image is already monoplane), so
  189. there is virtually no delay. The time delay varies inversely with the
  190. size of the block and the number of bit planes to be combined, but the 
  191. slight delay is hardly noticeable until you "pull" a block larger than
  192. a quarter-screen or so.
  193.  
  194.     When masking is complete, a free-floating copy of the block
  195. appears, attached at its center to the cursor point. This free-floater
  196. is shown in the transparent mode, for a maximally unobstructed view of
  197. the rest of the paint screen, regardless of which write mode is
  198. currently selected.
  199.  
  200.     In monochrome, the transparent "floater" can become entirely
  201. invisible, particularly when it is on a large area of not-the-screen-
  202. background color. To avoid this problem, press the Help key. This will
  203. toggle the floater into being displayed in the overwrite mode (regardless
  204. of which write mode is selected; the selected write mode remains active),
  205. thus making it visible everywhere on the screen. Another press of the
  206. Help key will toggle the floater back to transparent display, and so
  207. forth. The Help key works (and is necessary) this way only in high
  208. resolution when block is the paint function, as it key has another
  209. function in all other operations.
  210.  
  211.     Once you have the block as a floater, you may place it wherever you
  212. wish. The block can be moved off the edge of the paint screen (as far
  213. as its midpoint) in any direction. A single click of the left mouse
  214. button will affix a copy of the block (or that portion on the screen)
  215. at its current location. The block will printed to the paint screen in
  216. whatever write mode you have selected.
  217.  
  218.     As mentioned earlier, the four write modes available generally 
  219. throughout SEURAT for graphic operations are not implemented in the
  220. same manner for block placement. Overwrite and transparent function in
  221. the same manner as for graphic operations, but the xor mode affects
  222. only set pixels and is not executed on unset pixels.
  223.  
  224.     Because a true reverse transparent write mode would be of limited 
  225. usefulness for block placement, SEURAT substitutes inverse transparent
  226. as the fourth write mode for blocks. In the inverse transparent mode,
  227. he block is printed to the screen transparently (with pixels of color 0
  228. "transparent" to the background) but with the set pixels printed in
  229. inverse (If color>0 Then NOT Color).
  230.  
  231.     Additionally, if you press the 4 key in a for the inverse transparent
  232. mode and then hold down the Alternate key while placing the block with a
  233. left mouse click, the block will be printed to the paint screen in the
  234. not transparent mode (the block is "transparent" to the background, but
  235. the background that "shows through" is printed in inverse (not color) as
  236. well as the set pixels of the block).
  237.  
  238.     These two new write modes more than make up for the absence of the 
  239. not-terribly-useful (for blocks) reverse transparent mode. A wide range
  240. of graphically intriguing effects are possible with the inverse
  241. transparent and not transparent modes. Experiment with them!
  242.  
  243.     Additionally, it is often very useful to have user access to the
  244. block mask alone, without the accompanying block. For example, in the
  245. case when the block has a number of transparent "holes" which are
  246. supposed to be dark shadows in the image, but through which a bright
  247. distracting background shows. Holding down the Control key while
  248. placing a block will result in the block mask alone being printed to
  249. the screen in whichever write mode is currently selected (in write mode
  250. 4, an inverse mask is printed). Thus, one can "paste" a copy of the
  251. mask to an empty paint screen (with the same palette), fill in the
  252. "holes" quickly with a brush, fill the mask with a dark color, "pull"
  253. the mask as a block itself, use it to black out the background in the
  254. position where the desired block is to be placed, go "pull" the desired
  255. block, and align it over the black-out mask to produce a shadow.
  256.  
  257.     Those familiar with the ST will know that placement of screen
  258. portions is implemented by means of sixteen "primitive" graphic modes,
  259. in which two screen areas are combined according to variety of logical 
  260. operations. These 16 modes can be selected for block operations by
  261. pressing the keys A through P (either upper or lower case permitted).
  262.  
  263.     Again, holding down the Control key while clicking with the left
  264. mouse button will result in the block mask, rather than the block,
  265. being placed in whichever of the sixteen modes you have selected.
  266.  
  267.     This A-through-P key press is a one-time only operational mode;
  268. only the next block placement after such a key press is performed in
  269. one of the sixteen logical modes. These logical modes are as follows:
  270.  
  271.         A (0) - DELETE DESTINATION AREA
  272.         B (1) - NEW AND OLD
  273.         C (2) - NEW AND (NOT OLD)
  274.         D (3) - NEW {OVERWRITE}
  275.         E (4) - (NOT NEW) AND OLD {IMP}
  276.         F (5) - OLD {DO NOTHING}
  277.         G (6) - NEW XOR OLD
  278.         H (7) - NEW OR OLD
  279.         I (8) - NOT (NEW OR OLD) {NOR}
  280.         J (9) - NOT (NEW XOR OLD) {EQV}
  281.         K (10) - NOT OLD {INVERSE}
  282.         L (11) - NEW OR (NOT OLD)
  283.         M (12) - NOT NEW {INVERSE OVERWRITE}
  284.         N (13) - (NOT NEW) OR OLD
  285.         O (14) - NOT (NEW AND OLD) {NAND}
  286.         P (15) - SOLID COLOR 1 FILL DESTINATION AREA
  287.  
  288.     Further copies of the block can be placed elsewhere. If you return
  289. to the main menu and switch paint screens, when you enter the new paint
  290. screen, the block will follow (as long as you are still in the block 
  291. function), and copies may be placed there or in any paint screen.
  292.  
  293.     Pressing the Escape key indicates that you wish to select another
  294. block. The full-screen cross-hair cursor will reappear and the process 
  295. may be repeated. The selection of a new block may take place in any
  296. paint screen, but you must have selected the block function to do so.
  297.  
  298.     Blocks, once placed, can be removed from the paint screen by
  299. pressing Undo. Repeated keypresses of the Undo key will progressively
  300. remove blocks in the inverse order of their placement. Block Undo
  301. utilizes its own stack memory for block erasure. In order to conserve
  302. free memory, the block undo stack can be cleared after a succesion of
  303. operations by pressing Backspace. This must be done while block is the
  304. active paint function and while the paint screen is up, rather than the
  305. main menu is showing). For a complete description of how the block undo
  306. works, read the section on ERASE AND UPDATE carefully (below).
  307.  
  308.     Blocks may be manipulated in a variety of ways. They may be
  309. rotated, resized, and mapped to skew lines, arcs, distorted (in one
  310. dimension) in a freeform fashion, distorted trapezoidially in one
  311. dimension or the other, or in both dimensions at once. The complete
  312. description of block manipulations is to be found in the section on the
  313. BLOCK MENU (below).
  314.  
  315.     To return to the main menu, press the right mouse button (not
  316. Escape, which would select a new block!).
  317.  
  318.     FILL: Place the cursor at any point on the paint screen and press the
  319. left mouse button down firmly. Beginning at that point and proceeding in
  320. all directions from it, portions of the paint screen having the same
  321. color value as the selected point and continuously connected to it will
  322. be printed in the currently active fill pattern.
  323.  
  324.     Fill can easily leak into an area through diagonal gaps or staggers
  325. in a drawn figure, flooding it with fill. Immediately before executing
  326. a fill is a good time to update the paint screen with the Insert key,
  327. so that a faulty fill or series of fills can be undone. Consult the
  328. section on ERASE AND UPDATE for the operation of Insert-Undo.
  329.  
  330.     A right mouse click or pressing Escape returns you to the main
  331. menu.
  332.  
  333.     FILL SELECTION: A fill pattern may be selected by clicking on the
  334. appropriate box from the 46 fill display boxes around the circumference
  335. of the main menu. Only one fill type is shown at a time (COLOR or
  336. MONO). The user may change the fill type by a left mouse click on the
  337. COLOR or MONO buttons, which will trigger a redraw of the fill patterns
  338. to that fill type.
  339.  
  340.     The status of the INK option also effects the selection of fill
  341. pattern, by toggling the fill selection to MONO solid fill (number 7).
  342. See the explanation of INK given below. (Note: fills referred to by
  343. number in this manual are numbered from the upper-left-hand corner,
  344. proceeding clockwise around the main menu. The numbers used are 0 to
  345. 45.)
  346.  
  347.     The first 36 mono fills are those supplied by GEM. The remaining
  348. mono fills and all the color fills are built into SEURAT. All 92 fills
  349. are also included in the fill disk files, so that any fills replaced
  350. during the course of program operation can be reloaded if needed. The
  351. first color fills are "toners," i.e., half-tone patterns of Colors 1
  352. through the color just below the writing color mixed with the writing
  353. color itself. A separate set of color fills are supplied by SEURAT for
  354. operations in medium resolution; the medium resolution toners are
  355. combinations of all four colors with each other.
  356.  
  357.     Fills, whether in filled figures or used as area fills, are printed
  358. to the screen in the currently selected write mode, hence it is
  359. possible to fill one fill pattern with another fill pattern, to
  360. "overlay" an image with a "transparent" fill. Monoplane fills in a
  361. variety of colors can be combined with each other. Color fills as well
  362. as monoplane fills are printed in the currently selected write mode,
  363. thus a color fill which contains a background of the screen background
  364. color may be utilized in transparent mode.
  365.  
  366.     Again, as the effect of different write modes on fill patterns is 
  367. far from predictable, I suggest you experiment with a variety of
  368. combinations of effects.
  369.  
  370.     A left mouse double-click on the COLOR or MONO buttons calls up the
  371. appropriate color or mono fill editor, which allows fill patterns to be
  372. created, erased, modified, shifted, inverted, flipped, and SAVEd to and
  373. LOADed from disk.
  374.  
  375.     For a complete description, see the section on the FILL EDITOR
  376. (below).
  377.  
  378.     FILL EDITOR: Double-clicking on either the COLOR or the MONO fill
  379. type selector button calls up the appropriate fill editor. It consists
  380. of a) a 16x16 enlarged pixel input screen, b) seven function buttons,
  381. c) an  actual-size fill display and d) a color selector.
  382.  
  383.     When the fill editor is called, it loads the currently selected 
  384. fill pattern into the input screen, where the user can modify it. A
  385. left mouse click on one of the color selectors lets the user draw on
  386. the input screen in that color with the left mouse button. The mouse
  387. changes color to show the color selected. The right mouse button will
  388. erase an enlarged pixel on the input screen by converting it to the
  389. screen background color.
  390.  
  391.     The altered fill pattern is displayed in its actual size and in
  392. sufficient multiples for the user to gauge its appearance in a fill
  393. display box to the lower-right of the input screen. The fill display is
  394. updated as the fill pattern is altered. The color selector boxes are
  395. arranged from the screen background color at the top to the writing color
  396. at the bottom.
  397.  
  398.     Color fill patterns are palette dependent; that is, they change
  399. with every change in the palette that involves the colors of which they
  400. are composed. Thus, color fills may have to be edited for their best
  401. appearance in any image with a different palette than the default
  402. palette. SEURAT speeds the process of reassigning colors with the AUTO
  403. COLOR CHANGE feature.
  404.  
  405.     Double-clicking on one of the color selectors causes every pixel in
  406. the fill pattern which is the selected color (the color of the cursor)
  407. to be redrawn in the color the user double-clicked on. These changes
  408. are made both on the input screen and in the actual size fill display.
  409. Note that the cursor color has not been changed. Remember: that's
  410. single-click on the color to be changed, and double-click on the color
  411. to change it to.
  412.  
  413.     Fill patterns may be geometrically manipulated. Clicking on the
  414. INVERT button causes the fill pattern to be inverted, that is, turned 
  415. upside down. Clicking on the FLIP button reverses the fill pattern from
  416. left-to-right. Additionally, the four cursor keys will shift the fill
  417. pattern one pixel in their direction. The ERASE button will clear the
  418. fill pattern.
  419.  
  420.     Fill patterns are SAVEd to disk as a 16-word-per-bit-plane string.
  421. Hence, mono-plane fills (file extension .FIL) take 32 bytes, medium
  422. resolution two-plane fills (file extention .FL2) take 64 bytes, and low
  423. resolution four-plane fills (file extension .FL1) are 128 bytes in
  424. length.
  425.  
  426.     Fill patterns may also be SAVEd to or LOADed from disk. (For numerous
  427. small files such as these, folders are practically a neccessity; however,
  428. SEURAT does not require them.)
  429.  
  430.     Once a fill pattern has been modified or created, clicking on OK
  431. will cause the new fill to become the active fill pattern. It replaces
  432. the fill pattern that was selected when the user entered the fill
  433. editor.
  434.  
  435.     CANCEL aborts all changes made and restores the fill to that fill 
  436. pattern which was selected before entering the fill editor.
  437.  
  438.     The fill editor functions identically in MONO and COLOR fill types,
  439. except, of course, that in MONO only the screen background color and
  440. the writing color are active.
  441.  
  442.     BRUSH:  The "brush" is a geometric pattern of pixels which can be 
  443. painted to the screen. In the lower right-hand corner of the main menu 
  444. is an array of brush selector boxes. The default brush is the minimum
  445. brush: a single pixel. This option might be called "Pencil" or "Draw"
  446. in another program.
  447.  
  448.     When the brush function is active, the paint screen cursor is a
  449. "register mark," or an open cross-hair, which can be seen on any color
  450. background. The brush shape itself is not shown. In the default brush
  451. (one pixel), the brush's register-mark cursor allows for very fine and
  452. accurate placement of single pixels in precise position with reference
  453. to nearby pixels.
  454.  
  455.     The selected brush pattern paints in the currently active fill
  456. pattern unless the INK option is active, in which case it paints in the
  457. currently selected solid color. The brush function is the only
  458. color-dependent function which does not indicate the selected color by
  459. its cursor color, so you will have to toggle on the palette display if
  460. you want to check the color selection. (Press Help while on a paint
  461. screen.)
  462.  
  463.     There are 36 brushes shown in the brush selector boxes. A brush
  464. pattern is selected by a left mouse click on the appropriate box. The
  465. active brush pattern is highlighted. Clicking on a brush selector box
  466. will switch the paint function into brush. The selected brush remains
  467. highlighted at all times, even when brush is not the paint function.
  468.  
  469.     The user will note that the bottom row of boxes in the array of 
  470. brush patterns are empty. These six boxes are reserved for user-defined
  471. brushes. When you first click on an empty user-defined brush box, a
  472. brush pattern editor will be called up with which you can define a
  473. brush. (See section on BRUSH EDITOR below.)
  474.  
  475.     User-defined brushes can utilize any or all the colors of the
  476. active palette in a single brush pattern, that is, these brushes can be
  477. multi-color brushes. User-defined brushes are painted to the screen in
  478. the currently selected fill pattern unless the INK function is active,
  479. in which case they are painted to the screen in the colors in which
  480. they were originally defined. (They may also be painted in solid
  481. colors, but the user must select MONO fill number 7 manually, without
  482. engaging the INK option.)
  483.  
  484.     (Note: In low and medium resolution, the multi-colored user-defined
  485. brush is not highlighted or printed in inverse to show that it has been
  486. selected, as this would distort the colors. Instead, the brush selector
  487. box's border is set to the selector color, that is, the color used for
  488. pop-out menu frame cursors and around the borders of selected buttons.)
  489.  
  490.     I must caution you that user-defined brushes are unhappily slow
  491. when used as brush shapes alone, that is, when the Ink function is off.
  492. However, with Ink on (in the multi-color mode), they are the fastest of
  493. all the brushes. The brushes in SEURAT do not have their positional
  494. changes buffered. This means that if you move the mouse too rapidly,
  495. the brush (like a real paint brush) will "skip" or fail to print at
  496. aboslutely every intervening position between the beginning and end of
  497. a very, very rapid mouse movement.
  498.  
  499.     Any selected block of any size may also be used as a brush. A
  500. double-click of the left mouse button on the BLOCK button with BRUSH as
  501. the active function will select the currently defined block as the
  502. selected brush pattern. If no block is currently defined, an alert will
  503. advise the user. When block is selected as the brush pattern the BLOCK
  504. button will have a cross-hatched background and no brush pattern in the
  505. brush selector boxes will be highlighted. The block-as-brush option can
  506. be deselected by another double-click on the BLOCK button. The last
  507. selected brush pattern in the brush selector boxes will be highlighted.
  508.  
  509.     A right mouse click or press of Escape returns you to the main
  510. menu.
  511.  
  512.     BRUSH EDITOR: The brush editor functions in every regard like the 
  513. fill editor. The brush editor is called up whenever the user clicks on
  514. one of the user-defined brush selector boxes when no brush has yet been
  515. defined. The brush editor may also be called up by double-clicking on
  516. one of the user-defined brush selector boxes when it displays an
  517. already defined brush, thus allowing that brush to be altered or
  518. replaced.
  519.  
  520.     The brush editor will construct multi-colored brushes using the
  521. full palette allowed by the resolution the user is working in. These
  522. brushes may be up to 16x16 pixels in size.
  523.  
  524.     Brushes are SAVEd and LOADed in a 256-byte format in the ASCII
  525. value of the color numbers of the pixels, from the upper-left-hand
  526. corner, proceeding in left-to-right and top-to-bottom.
  527.  
  528.     RAY:  Ray places a number of lines all drawn to a single center. 
  529. Place the cursor at the point where you wish the center of the ray 
  530. operation to be and click the left mouse button once to establish the
  531. center. Move the cursor to another location and click the left mouse
  532. button again. A line will be drawn to the center.
  533.  
  534.     Holding the left mouse button down as you move the mouse causes
  535. continuous printing of rays to the center. A right mouse click indicates
  536. that you are voiding the existing center location and wish to choose
  537. another center with a further left mouse click.
  538.  
  539.     While the INK function is active, the lines drawn by ray will be in
  540. solid colors, the color selected being indicated by the mouse color.
  541. When the INK function is off, the lines drawn by ray will be in the 
  542. currently selected fill pattern, color or mono.
  543.  
  544.     Since a single right mouse click is used to allow the selection of
  545. new center locations without a return to the main menu, an additional
  546. right mouse click is required to exit the paint screen (or Escape).
  547.  
  548.     LINE:  Lines are always drawn in the currently selected solid 
  549. color (as indicated by the mouse color), never in the active fill
  550. pattern. A single left mouse click indicates the location of the
  551. starting point of the line to be drawn. An xor'ed line then follows the
  552. cursor around while the line end-point is being chosen. A second left
  553. mouse click fixes the line. A right mouse click voids the choice of
  554. starting point and allows a new starting point to be chosen.
  555.  
  556.     A right mouse click or Escape returns you to the main menu. Two
  557. right mouse clicks may be necessary if you have just voided a starting
  558. point.
  559.  
  560.     POLYLINE:  Polyline draws connected lines in a closed figure
  561. (polygon). A single left mouse click indicates the location of the
  562. starting point of the polyline to be drawn. An xor'ed line then follows
  563. the cursor around while the next line point is being chosen. A second
  564. left mouse click draws the finished line to that intermediate point.
  565. This process continues until the right mouse button is pressed, which
  566. causes the next line segment to be drawn to the starting point, closing
  567. the figure.
  568.  
  569.     If the Alternate key is held down while the starting point is
  570. selected, the completed figure will be filled with the currently
  571. selected fill pattern. The Alternate key need not be held down with
  572. each successive left mouse click, only the starting point selection
  573. click.
  574.  
  575.     A second right mouse click or Escape returns you to the main menu.
  576.  
  577.     BOX:  By box, SEURAT means an unfilled rectangle, or line figure. A
  578. single left mouse click indicates the location of the upper-left-hand
  579. point of the box to be drawn. An xor'ed box then follows the cursor
  580. while the lower-right-hand corner of the box is being chosen. A second
  581. left mouse click fixes the box in place. A right mouse click before the
  582. box is fixed voids the operation and allows a new upper-left-hand
  583. corner to be chosen.
  584.  
  585.     If the Alternate key is held down while the upper-left-hand corner
  586. is being selected, the completed box generated will be what is called a
  587. round-cornered box, although the actual figure is more like a clipped-
  588. cornered box.
  589.  
  590.     Boxes, like lines, are always drawn in the currently selected solid
  591. color, never the fill pattern. A right mouse click or Escape will
  592. return you to the paint menu.
  593.  
  594.     SOLID: By solid, SEURAT means a filled rectangle, or solid prism.
  595. The fill is always the currently active Fill Pattern. The resulting
  596. figure has no single-color perimeter.
  597.  
  598.     A single left mouse click indicates the location of the
  599. upper-left-hand point of the solid box to be drawn. An xor'ed box then
  600. follows the cursor while the lower-right-hand corner of the solid is
  601. selected. A second left mouse click fixes the solid in place. A right
  602. mouse click before the solid is fixed voids the operation and allows a
  603. new upper-left-hand corner to be chosen.
  604.  
  605.     If the Alternate key is held down while the upper-left-hand corner
  606. is being selected, the solid generated will be a round-cornered filled
  607. box.
  608.  
  609.     The solid is completely analogous to the box option in its
  610. operation. A right mouse click or Escape will return you to the main
  611. menu.
  612.  
  613.     CIRCLE:  Circle (and disc) are analogous to box (and solid) in
  614. their operation. The figure drawn is actually an ellipse. A single left
  615. mouse click indicates the location of the center point of the ellipse
  616. to be drawn. An xor'ed ellipse surrounded by a dimension-box then
  617. follows cursor movement. The vertical and horizontal distances of the
  618. cursor position to the center determine the horizontal and vertical
  619. axes of the ellipse. A second left mouse click fixes the ellipse in
  620. place and removes the dimensioning box. A right mouse click before the
  621. ellipse is fixed voids the operation and allows a new center point to
  622. be chosen.
  623.  
  624.     If you wish a "true" circle, you must dimension it to what 
  625. is "true" by your own eye. However, two other useful options are
  626. provided.
  627.  
  628.     Holding down Alternate while selecting the center point of the
  629. circle or disc being drawn allows subsequent left mouse clicks to draw
  630. circles or discs with the same center as the first. These subsequent
  631. circles and discs also possess the same shape as the first circle or
  632. disc drawn. This allows for the easy generation of concentric circles
  633. and discs.
  634.  
  635.     Holding down Control while selecting the center point of the circle
  636. or disc to be drawn allows subsequent left mouse clicks to draw circles
  637. or discs which possess the same horizontal and vertical sizes as the
  638. first drawn, but can be placed anywhere on the screen. This allows for
  639. the easy multiplication of identical circles and discs.
  640.  
  641.     A right mouse click is the signal that the user wishes to draw
  642. another set or type of circle or disc. Because of this use of the right
  643. mouse click, you must use Escape to return to the main menu from 
  644. the circle (or disc) option.
  645.  
  646.     DISC: All procedures and options described above apply equally to 
  647. the drawing of discs. The disc is merely a filled circle. The fill is
  648. the currently selected fill pattern. No solid color border is created
  649. with the figure (no visible perimeter).
  650.  
  651.     As with the circle option, a right mouse click is the signal that 
  652. the user wishes to draw another set or type of disc. Because of this
  653. use of the right mouse click, you must use Escape to return to the main
  654. menu from the disc option.
  655.  
  656.     O-BOX AND O-CIRCLE:  O-Box and O-Circle are a box and circle that
  657. is drawn in the currently selected color and which erases everything
  658. underneath the box or circle as it is drawn. Unlike the conventional
  659. box or circle, O-Boxes and O-Circles are drawn by depressing 
  660. and dragging the left mouse button.
  661.  
  662.     The results of drawing an O-Box or O-Circle in a write mode other
  663. than overwrite are usually not intuitively obvious. Experiment with
  664. some of these widely varying outcomes. With a little practice and some
  665. mouse control, they can be quite striking.
  666.  
  667.     A right mouse click or Escape will return you to the main menu. 
  668.  
  669.     AIRBRUSH:  The airbrush "sprays" pixels in a circular random
  670. pattern weighted toward the center, much as an actual airbrush or spray
  671. can would.
  672.  
  673.     The circular area in which the airbrush is active is set by the
  674. user by depressing Control prior to holding down the left mouse button.
  675. A variable diameter circle will appear which can be sized up or down by
  676. mouse movement away from or toward the circle's center. The left mouse
  677. button must be kept depressed during this operation.
  678.  
  679.     If the airbrush is not "sized" by the user, it has a default
  680. diameter of six pixels. The airbrush is turned on by the left mouse
  681. button and remains active while that key is depressed.
  682.  
  683.     The speed with which an area fills up with pixels depends solely on
  684. the size of the active circular area selected while "sizing" the brush;
  685. larger is slower overall. When the active circular area is very small
  686. (about 3 pixels in diameter), the airbrush produces a very rapidly
  687. drawn "fuzzy" line.
  688.  
  689.     The airbrush paints in the currently selected fill pattern unless 
  690. the INK function is on (highlighted), in which case it paints in the
  691. selected solid color (as indicated by the cursor color). The airbrush
  692. cursor is the normal arrow, but it is not printed to the screen during
  693. the airbrush's operation.
  694.  
  695.     If Alternate is held down when the left mouse key is first
  696. depressed, it does not "spray" pixels on the screen but rather "picks
  697. up" a pixel at random and exchanges it for another pixel at a different
  698. location, also selected at random. This randomization, or "smear
  699. "effect, (also called stipple in some programs) can be used to blend
  700. borders and blur too-sharp outlines. It produces a wide variety of
  701. effects depending on the size of the area affected. The area size is
  702. the same as the airbrush diameter (chosen with Control option).
  703.  
  704.     A right mouse click or Escape will return you to the main menu. 
  705.  
  706.     TEXT:  The text option allows the placement of input text on the
  707. paint screen. The cursor is a character cell approximately the size of
  708. the largest character in the typestyle you have selected.
  709.  
  710.     To input text, enter it in the conventional fashion, through the 
  711. keyboard. The entered text is shown on the paint screen as a "floater" 
  712. (just as the selected block is shown). The backspace key deletes the
  713. last entered character. Escape clears the line of type completely. All 
  714. other keypresses are appended to the text string being displayed.
  715.  
  716.     Text cannot be "pushed off" the screen by the text cursor. Its
  717. placement must remain with the screen boundaries. (Note: Move the mouse
  718. in a controlled fashion when nearing the edge of the screen with a text
  719. "floater," as too rapid movement of the mouse at the edges of the
  720. screen can cause the text "floater" to get "stuck" on the screen edge,
  721. leaving a mess. Do not despair! The Insert-Undo erasure-and-update
  722. system works during the text option, too.)
  723.  
  724.     Maneuver the text "floater" into position and affix it to the paint
  725. screen with a left mouse click. A right mouse click (not Escape, which
  726. clears the text string) returns you to the main menu.
  727.  
  728.     A single left mouse click on the TEXT button on the main menu will
  729. select the text option. A double-click on this TEXT button calls up the
  730. text dialog box. Type styles are selected by clicking on the type style
  731. buttons in the upper portion of the text dialog box. Selection of any
  732. type style except NORMAL turns off the NORMAL button. The other type
  733. style attributes (italic, outline, bold, underlined, lightened) may 
  734. be selected in combination with each other, i.e., bold italic. Clicking
  735. on NORMAL will clear all the other buttons.
  736.  
  737.     (The middle set of buttons, those for text rotation, are not
  738. currently implemented. All text is printed to the screen in the
  739. "normal" orientation.)
  740.  
  741.     The dot height selector allows values from 4 to 32. The currently
  742. selected dot height is shown in the window between the two arrows.
  743. Clicking on the left-hand arrow will reduce the dot height, and
  744. clicking on the right-hand arrows will increase it. The numerical range
  745. is modular, that is, trying to reduce the dot height from 4 to 3
  746. results in 32, and trying to increase it from 32 to 33 results in 4.
  747. The "canonical" sizes for text are 4, 6, 12, 24, 13, and 26 dots in
  748. height; text of other heights may not have a pleasing appearance.
  749.  
  750.     The type style selected is displayed in the strip window below the 
  751. three sets of buttons. When the selected type color is the screen
  752. background color, the box is filled with the writing color. Every
  753. change made to the type attributes is reflected immediately in the type
  754. style display. Below the type style display is a color palette for
  755. choosing the text color; select with a single left mouse click.
  756.  
  757.     The text dialog box is exited by a right mouse click.
  758.  
  759.     The text dialog box can be accessed from the paint screen while
  760. entering text. Simply press the up arrow cursor key and the text
  761. dialog box will appear. All changes made to the type attributes in the
  762. text dialog box are reflected in the "floater" type string when you
  763. exit the text dialog box. Thus, all type attributes may be modified
  764. before the user prints the text to the screen.
  765.  
  766.     The full 256-character ASCII set of the ST is available in SEURAT.
  767. To access characters not assigned keys on the keyboard, simply press
  768. the down arrow cursor key and a full ASCII set selector box will
  769. appear. Select a character with a left mouse click. Up to nine
  770. characters (at each call of the ASCII set selector box) may be appended
  771. to the text string.
  772.  
  773.     Your selections are confirmed and the ASCII set selector box is
  774. exited by a right mouse click.
  775.  
  776.     To exit the paint screen from the text option, you must use a right
  777. mouse click (not Escape).
  778.  
  779.     PAINT SCREEN SELECTOR: Up to eight paint screens may be used in
  780. SEURAT; the precise number available depends on the memory capacity of
  781. your ST. Screens which are not available are shown with lightened
  782. letters; these paint screen selector boxes will not respond to mouse
  783. clicks.
  784.  
  785.     Each paint screen is a self-contained graphic entity with its own
  786. color palette, which becomes active when that paint screen is selected.
  787. Elements may be transferred between paint screens by means of the block
  788. function. This is a simple matter when the two paint screens involved
  789. have the same palette. In the case of differing palettes, the block may
  790. be "pasted" to an unused paint screen having the same palette as the
  791. destination paint screen and modified using the the color map routine
  792. (see the section on color map below).  The active paint screen is
  793. selected by a left mouse click on one of the paint screen selector boxes
  794. "A" through "H." Each paint screen has its own palette which becomes
  795. active when that paint screen is selected.
  796.  
  797.     Additionally, the selected paint screen may be changed while the
  798. paint screen rather than the paint menu screen is displayed. The function
  799. keys switch paint screens, with F1 corresponding to screen A, etc.
  800. Calling a paint screen that doesn't exist (like F6 when you only have
  801. five screens active) has no effect.  Switching paint screens without
  802. returning to the paint menu screen forces an automatic update of the
  803. paint screen you are switching from, just as if you had keyed Insert
  804. before switching.  A double click on the active paint screen selector box
  805. calls up a dialog box which allows the user to copy the currently
  806. selected paint screen and its active palette into any other paint screen.
  807. This function will totally erase any elements already contained in the
  808. destination paint screen.  The screen copy dialog box (like the screen
  809. assignment dialog box in the image load process) shows the filenames of
  810. any images loaded into the eight paint screens. The destination paint
  811. screen is chosen by a left mouse click on the appropriate screen label
  812. button.  The user's action is reflected in the message line, the screen
  813. status display which registers which screens are copies and which screens
  814. were loaded from files, and by the highlighted button. Click the right
  815. mouse to confirm and exit.  A double click on the active paint screen
  816. selector box made while the Alt key is depressed calls up a dialog box
  817. which allows the user to import any other paint screen's active palette
  818. to the selected paint screen. This function will replace the selected
  819. paint screen's palette with the palette of the source paint screen.  The
  820. palette copy dialog box functions in an analogous manner to the screen
  821. copy dialog box explained above.  Clicking on the last or highest paint
  822. screen selector box while the Control key is depressed will cause that
  823. paint screen to be voided and removed from further access for the purpose
  824. of freeing up memory resources.  See the section on memory management for
  825. a discussion of reducing the number of paint screens available, in order
  826. to increase memory freespace.
  827.  
  828.     PALETTE DISPLAY:  The colors are arranged from the screen background
  829. color (color 0) at the upper-left-hand color box to the writing color
  830. (color 15, or 3, or 1, depending on the resolution) at the lower-
  831. right-hand color box.
  832.  
  833.     A left mouse click will log in, or select, a color. The mouse will 
  834. turn the color currently selected and remain that color until another 
  835. color is selected.
  836.  
  837.     A double click on any of the color boxes in the palette display 
  838. will call up the palette editor dialog, in which palettes may be set, 
  839. modified, and SAVEd to and LOADed from the disk. See the section on the
  840. palette editor (below).
  841.  
  842.     One of the most laborious aspects of any paint program is having to
  843. flip back and forth to-and-from a menu screen in order to reselect
  844. colors. SEURAT allows the user to make color selections without
  845. flip-flop, directly from the paint screen.
  846.  
  847.     Simply press the Help key and the palette display will be printed to
  848. the paint screen in the same location that it is to be found on the paint
  849. menu screen. Select a color with a left mouse click. The mouse will
  850. change color correspondingly. Then, a right mouse click unprints the
  851. palette display. (The palette display must be unprinted before you can
  852. proceed with any operation!)
  853.  
  854.     This process can be repeated as often as is required without leaving
  855. the paint screen. When you return to the paint menu screen, the selected
  856. color will be restored to the color that was selected when you entered
  857. the paint screen.
  858.  
  859.     PALETTE EDITOR: The palette editor screen displays the full color
  860. palette in a format arranged as the color palette is shown on the paint
  861. Menu Screen and the Zoom Screen. In addition, it shows the color Number
  862. and intensity values for each color.
  863.  
  864.     The color currently selected is indicated by the color of the palette
  865. mouse (a palette with the abbreviation PAL beside it), except in the
  866. screen background color, when the palette mouse has the writing color.
  867. The action point of this mouse is in the center of the figure.
  868.  
  869.     The selected color number is shown in a box at the upper center of
  870. the palette editor screen. Beside this box are the two color system
  871. selector boxes. Color intensities may be shown in either the RGB system
  872. native to the ST or in the Cyan-Magenta-Yellow system as used in color
  873. photography. A left mouse click on the appropriate color system selector
  874. box toggles the numerical display into that color system. Choice of color
  875. system in no way affects the actual operation of the program; it is
  876. merely a convenience for those more accustomed to the photographic frame
  877. of reference.
  878.  
  879.     Individual color intensities may be altered by clicking on the 
  880. appropriate digits in the numerical display.
  881.  
  882.     Below the numerical display, the View button allows the user to see
  883. the effect on the paint screen image of any changes made. The user may
  884. return to the palette editor from the full-screen view by a right mouse
  885. click or the Esc key. While the image is in the view mode, no mouse is
  886. visible.
  887.  
  888.     Palettes may be SAVEd or LOADed by clicking on the buttons so
  889. designated. Palette files have the file extension .PL1, .PL2, or PL3.
  890. They are 32 bytes in length and are in the same form as used in the 3rd
  891. through 34th bytes of the DEGAS picture format.
  892.  
  893.     The RESTORE button sets the palette back to whatever values it had 
  894. when the user entered the palette editor.
  895.  
  896.     The palette editor implements a color swap feature, similiar in its
  897. usage to the auto color change feature of the fill editor. Double-
  898. clicking on any color display box will swap that color in the palette
  899. with the color currently selected. The selected color remains selected.
  900. This feature is useful for swapping the screen background color with the
  901. writing color, for example, as well as for easier rearrangement of the
  902. palette.
  903.  
  904.     The palette editor must be exited with a right mouse click or by 
  905. keying Esc.
  906.  
  907.     While running SEURAT in monochrome, the palette editor is not
  908. accessible, for obvious reasons, but several additional functions beyond
  909. choosing black or white are available!
  910.  
  911.     In monochrome, double-clicking on the first color box of the palette
  912. display (the screen background color) will cause it to reverse, thus
  913. producing a paint screen image that is a "negative" or inverse of the
  914. original image.
  915.  
  916.     Also in monochrome, double-clicking on the first color box (color 0)
  917. of the palette display while you are holding down the Alt key will
  918. reverse both the monochrome "color palette" and the image itself, thus
  919. allowing a palette swap without altering the image. These two features
  920. function only in high resolution (monochrome monitors).
  921.  
  922.      INK:  Clicking on the INK button toggles the fill selection to MONO
  923. solid fill (number 7). INK is turned off by a) another left mouse click
  924. on the INK button, b) chosing any other MONO fill pattern besides SOLID,
  925. or c) clicking on the COLOR fill selector button. When INK is on, most
  926. painting and drawing functions are performed in solid colors.
  927. Additionally, when INK is on, the active user-defined brush (bottom row
  928. of the brush selector boxes) are printed to the screen in the multi-color
  929. mode. When INK is off these brushes are printed in the currently active
  930. fill pattern. (See the section on brushes or the brush editor.) The INK
  931. button is highlighted when the INK function is on.
  932.  
  933.      CLIP:  Clipping restricts all graphic functions to a predefined
  934. rectangular area of the screen. Clipping is what GEM uses to limit
  935. graphic output to windows, for example. SEURAT places control of clipping
  936. in the user's hands. A double click on the CLIP button calls up the paint
  937. screen with a thich crosshair mouse. Dragging with the left mouse key
  938. held down will define an active area for graphic operations.
  939.  
  940.     After the clipped area has been defined, a click of the right mouse
  941. key will return you to the paint menu. You will notice that the CLIP
  942. button has not highlighted by setting the clipping coordinates. A single
  943. click with the left mouse key on the CLIP button toggles the clip
  944. function on and off. The CLIP button is highlighted when clip is active.
  945.  
  946.      If you attempt to turn clip on without setting  clipping coordinates
  947. first, an alert box will inform you that no coordinates have been set.
  948. Once the clipping coordinates are set, they are retained by SEURAT until
  949. they are reset. This is true whether the clip function is on or off; that
  950. is, clipping coordinates do not have to be set every time clipping is
  951. turned on.
  952.  
  953.     The clipping coordinates may be displayed on the paint screen at any
  954. time by pressing the "C" (or "c") key. The clipping rectangle will be
  955. displayed until removed with a right mouse click. No operations are
  956. possible until the clipping rectangle display is removed.
  957.  
  958.     AUTO: (See the section on ERASE AND UPDATE, below.)
  959.  
  960.     POP-OUT MENU:  Pop-out menus are called by clicking on the
  961. appropriate menu button. Once they appear, the mouse must enter the menu
  962. panel. A frame cursor follows the mouse from item to item. If the mouse
  963. exits the menu panel without selecting an item the pop-out menu
  964. disappears and no action is taken. If an item is selected by a left mouse
  965. click, the menu panel is removed and the selection is acted upon.
  966.  
  967.     (Note: the frame cursor is normally printed in the frame or border
  968. color, the second highest color number. Should this color be similar to
  969. the screen background color and hard to see, it may be changed to the
  970. writing color by pressing the Esc key. Another press of the Esc key
  971. toggles back to the frame color. The frame cursor must be moved before it
  972. will be printed in the new color.)
  973.  
  974.     The MENU button on the paint menu screen calls up a pop-out menu
  975. containing the following options: Erase, which erases the paint screen;
  976. Zoom, which allows individual pixels to be drawn; File, which calls up
  977. the file function dialog box; block menu, a further pop-out menu which
  978. accesses block manipulations;  Transforms,  a subroutine to perform
  979. geometric transformations on entire paint screens; color map, a
  980. subroutine to remap the color number assignments of pixels; and Quit,
  981. the program exit.
  982.  
  983.     QUIT:  There are more reasons than neatness for exiting the program
  984. by way of the Quit option. The program closing routine restores your ST
  985. to whatever configuration was set when you entered the program:  drives,
  986. Desktop palette, clipping coordinates, some poking around down into the
  987. basement of the memory where pokes do strange things. Besides, there's no
  988. other way out, except to (arghh!) reset or turn the machine off. (Don't
  989. do it!)
  990.  
  991.     The File option calls up the file function dialog box, which offers
  992. five disk routines. They are: a) Load an image file, b) Save an image
  993. file, c) Delete any file, d) Set currently active disk drive, and e)
  994. Format a disk (in the currently selected drive). Any number of file
  995. operations may be carried out from the file function dialog box without
  996. the user having to call it up again. The file function dialog box is
  997. exited by a right mouse click.
  998.  
  999.     While operating out of the file function dialog box, the cursor is
  1000. configured like a floppy disk with the word "File" on it. The action
  1001. point of this mouse is in the center of the figure.
  1002.  
  1003.     LOAD IMAGE FILE: When loading an image file, the user will be
  1004. presented with the GEM file selector box. The file specification demands
  1005. an image file in the uncompressed DEGAS format with the file extension
  1006. .PI1, .PI2, or .PI3, depending on the resolution in which the program is
  1007. being run. In low resolution, SEURAT will load a NEOchrome image file
  1008. with the file extension .NEO; however, such files, once loaded, will be
  1009. only be saved in the DEGAS format.
  1010.  
  1011.     After the user has selected an image and its presence on the disk has
  1012. been verified, SEURAT with present the user with the image assignment
  1013. dialog box. The user must assign the image to be loaded to one of the
  1014. valid paint screens. A screen status table keeps track of which files
  1015. have been loaded into which paint screens.
  1016.  
  1017.     The paint screen selection may be changed any number of times before
  1018. confirming and exiting the image assignment dialog box with a right mouse
  1019. click. The message line and the screen status table are updated
  1020. continuously prior to exit. Assigning a loaded file to a paint screen
  1021. erases all preexisting contents of the paint screen. The user is not
  1022. querried or alerted to this possibility. When the image file is loaded to
  1023. a paint screen, that paint screen becomes the currently selected paint
  1024. screen.
  1025.  
  1026.     AUTO-LOAD OPTION: Often, work on a single image will extend over many
  1027. sessions with the program. To facilitate the multi-session work on a
  1028. single picture, I added the auto-load option. Any image file named
  1029. PICTURE.PI? (the ? indicates the appropriate boot resolution) will be
  1030. automatically loaded into paint screen A when SEURAT is loaded and run.
  1031. The PICTURE.PI? file must be on the root directory of the disk, not in a
  1032. folder.
  1033.  
  1034.     SAVE IMAGE FILE: The save image option always saves the currently
  1035. selected paint screen. The GEM file selector box called up will show as
  1036. default filename the filename the image was loaded under, if the image
  1037. was originally loaded into the currently selected paint screen.
  1038.  
  1039.     If the filename you have supplied does not already exist on the disk,
  1040. SEURAT will check the disk space available before attempting to write the
  1041. file to disk and you will be alerted if disk free space is less than the
  1042. required 32034 bytes. If the filename supplied by the user already exists
  1043. on the disk,  it will be overwritten without any further query of the
  1044. user.
  1045.  
  1046.     FILE DELETE:  Any file on the disk may be deleted by choosing it 
  1047. with the GEM file selector box. The user will be asked to confirm the 
  1048. deletion operation.
  1049.  
  1050.     SET DRIVE:  The drive selector dialog box shows the sixteen potential
  1051. drives supported by GEM. Unavailable drives are indicated in lightened
  1052. letters. Drives A and B always exist, even on a single drive system, as
  1053. logical drives. The user's selection is shown by the highlighted drive
  1054. box. No selection is validated until the Drive selector dialog box is
  1055. exited by clicking on "OK." Should a non-connected drive be selected by
  1056. the user, the choice is invalidated just as would occur had the user
  1057. clicked on "CANCEL."
  1058.  
  1059.     FORMAT DISK:  The disk format dialog box is virtually identical with
  1060. the GEM format dialog box and functions in the same way. The disk to be
  1061. formatted should not be inserted until SEURAT prompts you to do so.  The
  1062. format operation must take place in drive A. Any errors encountered  in
  1063. the formatting operation (or the hopeful absence thereof) are reported
  1064. after the operation is complete. The formatting operation may be repeated
  1065. as many times as desired without exiting the disk format dialog box. 
  1066.  
  1067.     For  a  discussion  of the other  pop-out  menu  functions  (zoom,
  1068. transform and color map), see the relevent sections below.
  1069.  
  1070.     BLOCK MENU:  This option on the principal paint menu screen pop-out
  1071. menu calls up another pop-out menu, above the first, containing options
  1072. for the manipulation of blocks, as well options to LOAD and SAVE blocks
  1073. to disk.
  1074.  
  1075.     They are: a) Rotate block, b) Re-size block, c) Vertical Freeform
  1076. Distort, d) Vertical Arc Distort, e) Vertical Skew Distort, f) Vertical
  1077. Trapezoidial Distort, g) Horizontal Freeform Distort, h) Horizontal Arc
  1078. Distort, i) Horizontal Skew Distort, j) Horizontal Trapezoidial Distort,
  1079. k) Distort, l) Load block, and m) Save block.
  1080.  
  1081.     All block manipulation routines use the same mouse protocol. After
  1082. the user has indicated the the operation to be performed with the left
  1083. mouse button, a right mouse click causes the indicated operation to be
  1084. performed. When it is concluded, the user has three options: a left mouse
  1085. click voids the completed operation and allows for a repeat operation
  1086. on the same block to be performed; a right mouse click confirms the
  1087. already-completed operation and causes the modified block to become the
  1088. currently selected block, exiting the manipulation routine; and pressing
  1089. the Undo key voids the already-completed operation and exits the
  1090. manipulation routine with the original form of the block continuing to be
  1091. the currently selected block.
  1092.  
  1093.     All block manipulations are carried out on a single screen, which
  1094. must contain either the original block and the modified block or the
  1095. original block and certain modification indicators. This means that there
  1096. is a physical limitation upon the size of the block that can be modified
  1097. successfully.
  1098.  
  1099.     SEURAT does not calculate these size limitations; the rule here 
  1100. is: if it works, great; if not, try again with a smaller block.
  1101.  
  1102.     ROTATE BLOCK:  The block is presented center-screen; above it is
  1103. rotation selector box. Rotation is calculated in the natural order of the
  1104. trigonometric functions, that is, with the 0° point directly to the right
  1105. of the center point and with rotation in the counter-clockwise direction.
  1106. Rotation in the clockwise direction is accounted negative rotation.
  1107.  
  1108.     Left mouse clicks on the directional arrows set the number of degrees
  1109. for the rotation. Holding down the left mouse key will cause the numbers
  1110. to advance rapidly. An xor'ed box shows the rotated orientation of the
  1111. block.  A right mouse click causes the operation to be performed. The
  1112. original block is placed in the upper-left-hand corner of the screen and
  1113. the rotated block is formed in the lower-right-hand corner of the screen.
  1114.  
  1115.     When the operation is complete, a right mouse click confirms the 
  1116. new block, a left mouse click causes the operation to be repeated, and 
  1117. Undo voids the operation without result.
  1118.  
  1119.     (Please note that the rotation options on the transform menu produce
  1120. vastly superior but slower results for rotations which are modular to 90
  1121. degrees.)
  1122.  
  1123.     RESIZE BLOCK:  The block is presented in the upper-left-hand corner
  1124. of the screen with an outline box showing the right and bottom edges of
  1125. the block. Grab the lower-right-hand corner of the block with the left
  1126. mouse button and drag it to the position it will occupy in the new block.
  1127. When the user releases the left mouse button, the operation will be
  1128. performed.  The resize option allows for both enlargement and reduction
  1129. of the block.
  1130.  
  1131.     If the Alt key is held down while the left mouse button is first
  1132. depressed, the resulting block will have the same proportions as the
  1133. original block.  If the Control key is held down while the left mouse
  1134. button is first depressed, the resulting block will be enlarged or
  1135. reduced to the same scale as the last completed resizing operation
  1136. performed. This allows a series of different blocks to be resized
  1137. identically. This feature is of use when a very large block is to be
  1138. segmented, resized, and recombined, also when portions of different paint
  1139. screens need to scaled identically.
  1140.  
  1141.     When the operation is complete, a right mouse click confirms the 
  1142. new block, a left mouse click causes the operation to be repeated, and 
  1143. Undo voids the operation without result.
  1144.  
  1145.     FREEFORM MANIPULATION: The following applies to both vertical and
  1146. horizontal freeform manipulations. The block is placed to one side of an
  1147. orientation line the height or width of the block. By dragging the left
  1148. mouse button to one side or the other of the orientation line, the
  1149. orientation line is deformed, pixel by pixel, to the path of the mouse.
  1150. Do not attempt to move the freeform shape of the orientation line nearer
  1151. to the block, but shape it centered on the original position of the
  1152. orientation line.
  1153.  
  1154.     A right mouse click will cause the block to be distorted to the
  1155. outline you have drawn. The freeform distort contour may be manipulated
  1156. indefinitely before commencing the operation. After the operation is
  1157. completed, it may be repeated by a left mouse click. Undo cancels the
  1158. operation and returns without result.
  1159.  
  1160.     ARC:  The following applies to both vertical and horizontal arc
  1161. manipulations. The block is placed to one side of a gate through which a
  1162. circular form squeezes back and forth as the user moves the cursor
  1163. without depressing any mouse buttons. The gate is the height or width of
  1164. the block.
  1165.  
  1166.     When the center of the circle is between the gate and the block, the
  1167. block will be distorted to the contour of that portion of the circle that
  1168. is on the side of the circle away from the block. In this case, it does
  1169. not matter if a portion of the circle passes through the block.
  1170.  
  1171.     When the center of the circle is on the side of the gate away from
  1172. the block, the block will be distorted to the contour of that portion of
  1173. the circle that is on the side of the circle nearest to the block. In
  1174. this case, do not allow a portion of the circle to pass through the
  1175. block, as the central portion of the new block will not be successfully
  1176. modified.
  1177.  
  1178.     In the case of a block very large in the dimension to be modified, 
  1179. some or all of the gate may not be visible on the screen. The operation
  1180. will be performed successfully, however, whether the gate is visible or
  1181. not.
  1182.  
  1183.     Again, a right mouse click will cause the block to be distorted to
  1184. the arc you have positioned. The circle may be manipulated indefinitely
  1185. before commencing the operation. After the operation is completed, it may
  1186. be repeated by a left mouse click. Undo cancels the operation and returns
  1187. without result.
  1188.  
  1189.     SKEW:  The following applies to both vertical and horizontal arc
  1190. manipulations. The block is placed to one side of a gate through which a
  1191. skew-line is drawn. The skew-line may be pivoted about the center of the
  1192. gate as the user moves the cursor without depressing any mouse buttons.
  1193. The gate is the height or width of the block.
  1194.  
  1195.     A right mouse click will cause the block to be skewed to the
  1196. inclination of the skew-line. After the operation is completed, it may be
  1197. repeated by a left mouse click. Undo cancels the operation and returns
  1198. without result.
  1199.  
  1200.     TRAPEZOIDIAL DISTORT: A box is printed to the dimensions of the
  1201. block. The corners of this box may be moved by dragging on them with the
  1202. left mouse button depressed. The mouse cursor must approach to within
  1203. three pixels of the corner to "grab" it. In the vertical operation, only
  1204. the Y- coordinates of the corners may be altered; in the horizontal, only
  1205. the X- coordinates.
  1206.  
  1207.     A right mouse click will cause the block to be mapped to the
  1208. resulting trapezoidial figure. After the operation is completed, it may
  1209. be repeated to new parameters by a left mouse click. Undo cancels the
  1210. operation and returns without result.
  1211.  
  1212.     In the case of extreme distortions, it may happen that curvilinear
  1213. patterns of unfilled pixels are found in the distorted image. If the Alt
  1214. key is held down when the right mouse button is clicked, the operation is
  1215. performed with bigger "transfer pixels." However, this may result in an
  1216. increase in "chunkiness" elsewhere in the image.
  1217.  
  1218.     DISTORT: This is the all-purpose image manipulation routine.  Unlike
  1219. the trapezoidial distort, the four corners of the outline box may be
  1220. placed anywhere on the screen. (But do not allow them to intersect the
  1221. displayed block itself!) Distort scales up and down in size while
  1222. performing rotations and displacements. It is surprizingly fast (well, it
  1223. surprised me...) Oddly enough, it can perform a simple rotation faster
  1224. than the rotate option and with as great accuracy, but without using
  1225. trigonometric functions. Hmm..
  1226.  
  1227.     Usage is the same as the trapezoidial distorts (including the 
  1228. fill-out option of the Alt key; see above).
  1229.  
  1230.     LOAD AND SAVE:  Blocks may be saved to disk and loaded from disk.  No
  1231. palette is saved with the block. The format of the block file is:  one
  1232. word (two bytes) giving the width of the block in pixels, one word (two
  1233. bytes) giving the height of the block, and a string of variable length
  1234. containing that portion of the screen as stored internally by GFA BASIC.
  1235.  
  1236.     GEM MENU ACCESS:  As you have almost certainly guessed by now, from
  1237. the descriptions of the various menus or from running the program itself,
  1238. SEURAT is not a GEM menu program with the traditional menu bar across the
  1239. top of the screen. However, this does not mean that you are denied access
  1240. to desk accessories!
  1241.  
  1242.     By double-clicking on the MENU button on the paint menu screen, you
  1243. can access a pseudo-desktop from which your desk acessories can be
  1244. called. This "desktop" will possess the color palette of the desktop from
  1245. which you booted SEURAT.
  1246.  
  1247.     In addition, under the "File" heading, the file function dialog box
  1248. can be called, although the "Load Image" and "Save Image" options are
  1249. unavailable through this "desktop." This does allow the user to change
  1250. the selected drive, format a disk, or delete any file.
  1251.  
  1252.     You can also call the GFA BASIC FILES function for a file directory
  1253. of the currently selected drive from the "File" heading on the menu bar.
  1254. It will show the presence of folders but not their contents.  (This
  1255. feature may result in a rapid scroll-over if there are more than 22 files
  1256. and folders present.)
  1257.  
  1258.     The option to return to the SEURAT paint menu screen is located just
  1259. under the "Desk" heading, where the credits or advert alert is usually
  1260. placed. SEURAT can be exited from this "desktop" by the "Quit SEURAT"
  1261. option.
  1262.  
  1263.     (Note: Calling the Control Panel accessory, or any other accessory 
  1264. that changes or can change the color palette, will have no effect on 
  1265. SEURAT's color palettes, which will be reinstated upon return to the 
  1266. paint menu screen, voiding any changes made from this "desktop.")
  1267.  
  1268.     The  availability  of desk acessories  means,  among  other
  1269. possibilities, that you can load Print Drivers (Tom Hudson's INSTALL.ACC
  1270. in the first issue of START) or load any of a wide variety of alternate
  1271. fonts for use with the TEXT option (the public domain FONTRIX.ACC).
  1272. Although the Control Panel cannot be used to set the color palette, time
  1273. and date marking for files, keyboard delay and repeat rates, and so forth
  1274. can be set. The mouse double click speed cannot be set with the Control
  1275. Panel, as SEURAT has its own routines for that function. (It can be
  1276. adjusted, however; see the discussion of the Zoomscreen below.)
  1277.  
  1278.            OPERATIONS ON THE PAINT SCREENS
  1279.  
  1280.  
  1281.      ERASE AND UPDATE:  The paint screen can be erased entirely by
  1282. selecting the "Erase" option from the pop-up menu, presently the user
  1283. with a blank screen. This "Erase" is an irrevocable command and cannot be
  1284. undone.
  1285.  
  1286.      Controlled deletion of screen elements is left to the user's
  1287. management in SEURAT. Screen updating is performed by pressing the Insert
  1288. key while the paint screen is displayed. Insert triggers a screen
  1289. capture, and no element, once updated, can be undone. The user can, of
  1290. course, manually erase any element by painting it with a brush in the
  1291. background color, drawing a solid geometric form in the background
  1292. color over it, or otherwise tinkering with the pixels.
  1293.  
  1294.      Pressing the UNDO key while the paint screen is displayed erases all
  1295. operations performed on the paint screen since the last INSERT keypress.
  1296. An UNDO cannot be undone, except by performing the operations again.
  1297.  
  1298.      Updating of the paint screen is NOT performed automatically by
  1299. SEURAT (except by the AUTO function; see below). Therefore, it's a good
  1300. idea to acquire the habits of a) concluding every successful operation by
  1301. punching the Insert key (rather like keying Enter), or b) making frequent
  1302. Insert's, or c) keying Insert before attempting anything you think you
  1303. might mess up...
  1304.  
  1305.     The Undo-Insert system functions with all paint screen operations
  1306. except block, which has its own system.
  1307.  
  1308.     Block functions have their own item-by-item undo stack, which is
  1309. currently configured to be up to 100 items deep. This can be very handy
  1310. in a messy situation, but it can cause a mess, too. Attempting to place
  1311. 100 2500-byte blocks, will create an Undo stack that uses a
  1312. quarter-megabyte of memory. This would almost certainly crash the program
  1313. (unless you're running it on a Mega, lucky you...)
  1314.  
  1315.     While the block undo stack persists and is always available while the
  1316. paint function is block, the two undo systems (block undo and Undo-
  1317. Insert) do not take notice of each other. No block operations are a
  1318. permanent part of the paint screen until an Insert is pressed. On the
  1319. other hand, the block undo can undo a block operation even though the
  1320. paint screen has been updated by Insert.
  1321.  
  1322.     Block undo removes blocks in the inverse order of their placement.
  1323. block undo is valid only for the paint screen where block placement has
  1324. been performed, whether the block was drawn from that screen or another.
  1325. Block undo is valid for that paint screen even though the user has
  1326. switched to another paint screen and back again, as long as no
  1327. intervening block placements are made on any other paint screen (since
  1328. the undo chomps down the stack in inverse order, destroying the saved
  1329. screen portions under the block placements but only restoring those on
  1330. the visible paint screen). Of course, it you can remember what order you
  1331. placed what blocks on which paint screen, you could unprint them all in
  1332. inverse order.
  1333.  
  1334.     The block stack works like this: the portion of a paint screen where
  1335. a block is to be placed is saved to the stack before block placement and
  1336. the stack pointer is incremented. The index of the paint screen is saved
  1337. with the block. When the user keys Undo, the stack pointer is decremented
  1338. and the screen portion is put back where the block was placed only if the
  1339. current paint screen is the same one where the block was originally
  1340. placed. If it is not the same paint screen, nothing is done to the paint
  1341. screen, but the screen portion is cleared from the block stack, i.e.,
  1342. wiped out.
  1343.  
  1344.     As you continue to place blocks on various paint screens, you will
  1345. notice a steady decline in the amount of free memory shown in the FRE
  1346. ledger line as the Undo stack grows. Once you are certain you will not
  1347. need to undo any block placements, the block undo stack can be cleared by
  1348. pressing the Backspace key.
  1349.  
  1350.     Note that the screen portion that replaces the block was saved when
  1351. the block was placed, and therefore any other paint operations performed
  1352. on the area of the block between the time the block was placed and the
  1353. time it is undone are not preserved (unless they were other block
  1354. placements).
  1355.  
  1356.      The AUTO option toggles on and off the execution of an automatic
  1357. paint screen update (just as if the user had keyed Insert). This paint
  1358. screen update is performed each time the user switches from the paint
  1359. screen to the paint menu screen or to any other paint screen. Activation
  1360. of the AUTO mode in no way interferes with the Undo-Insert or block undo
  1361. systems. The user may make additional updates by means of Insert at any
  1362. time. The AUTO button is highlighted when AUTO mode is active.
  1363.  
  1364.     MEMORY MANAGEMENT: At startup, the program creates screens until the
  1365. free memory that would be available to the running program falls below
  1366. 184,000 bytes. This results in a variable memory workspace depending on
  1367. the machine configuration, number of active accessories, etc. Currently,
  1368. SEURAT running on a 1040ST with no desk accessories active provides 5
  1369. paint screens in low, 6 in medium and 7 in high resolution.
  1370.  
  1371.     Running the source code through the interpreter allows more screens
  1372. than the compiled program, a memory bonus that is more than compensated
  1373. for by the often-slower program operation. For the maximum memory
  1374. overhead, run SEURAT without any desk accessories active.
  1375.  
  1376.     SEURAT is not wasteful of memory resources. It contains its own
  1377. "garbage-collection" routines; storage variables are cleared after use,
  1378. dimensioned variables are erased when not in use and redimensioned again
  1379. when needed, etc.
  1380.  
  1381.     The 180,000 to 210,000 bytes that SEURAT allows for workspace is not
  1382. sufficient for all operations that can be performed. That is, depending
  1383. on the tasks you perform, it is possible for SEURAT to run out of memory!
  1384. I emphasize this fact because doing so will cause the program to crash in
  1385. flames, that is, terminate. But read on...
  1386.  
  1387.     For example, that is not enough memory workspace for the user to
  1388. select a block that is three-quarters of a screen in size and resize it
  1389. to a full screen. (Block manipulations are the the biggest memory
  1390. consumers.)
  1391.  
  1392.     What will you do? The answer is: SEURAT allows the user to monitor 
  1393. and manage its memory requirements from within the running program. 
  1394. Hmmm...
  1395.  
  1396.     Paint screens are provided for in memory when the program is loaded
  1397. and run. Each paint screen consumes 32000 bytes of memory. Paint screens
  1398. may be deleted from program access and their alloted memory turned back
  1399. to the program for other uses.
  1400.  
  1401.     To release memory, select the last accessible active screen selector
  1402. Box. That is, if "G" is the last paint screen selector box printed in a
  1403. normal (not lightened) letter, click on it to highlight (select) it.
  1404. Then, with the Control key depressed, double click on it.  The "G" box
  1405. will unhighlight, the box immediately above it (in this case, the "F"
  1406. box) will highlight and become the selected paint screen. The "G" box
  1407. will become unselectable (printed in a lightened letter), and the FRE
  1408. memory register will show an increase of 32000 bytes.
  1409.  
  1410.     This process may repeated any number of times, but SEURAT will not
  1411. allow you to remove the "A" paint screen! A paint screen that has been
  1412. made unselectable cannot be returned to active status during the same
  1413. run of the program. To regain the full screen capability, you must save
  1414. your work and rerun the program.
  1415.  
  1416.     So that the user does not have to keep watching the FRE register,
  1417. SEURAT provides a low memory warning: a burst of musical noise which
  1418. changes pitch with each repetition. This warning is sounded whenever free
  1419. memory falls below 64000 bytes.
  1420.  
  1421.              THE SEURAT ZOOMSCREEN
  1422.  
  1423.     To access the Zoomscreen from the paint menu screen, the user may 
  1424. select the "Zoom" option from the pop-out menu or press the Clr/Home 
  1425. key.
  1426.  
  1427.     THE SET WORK SCREEN:  If you have not yet entered the Zoomscreen
  1428. since the beginning of program operation, you will be presented with the
  1429. currently selected paint screen upon which to set the work area to be
  1430. enlarged. You'll know that it is the set work screen because the mouse,
  1431. while having its normal coloration, is upside-down; it is now a down
  1432. arrow instead of an up arrow.
  1433.  
  1434.     Set work screen operation is as follows: a left mouse click will 
  1435. cause the appearance of an xor'ed box twenty pixels square. All SEURAT 
  1436. work areas are square in configuration.
  1437.  
  1438.     This work area may be enlarged to fifty pixels square in low
  1439. resolution, a square one hundred by fifty pixels in medium resolution, or
  1440. one hundred pixels square in high resolution. To enlarge the original
  1441. square, depress the left mouse button and drag it downwards. The work
  1442. area may not be enlarged beyond the limits given above no matter how far
  1443. you drag the mouse.
  1444.  
  1445.     The range of zoom magnifications is 4 power to 10 power for low
  1446. resolution and 4 power to 20 power for high resolution. (In medium the
  1447. maximum magnification is 20 power along the x-axis and 10 power along the
  1448. y-axis.) The magnification selected will be the highest one consistent
  1449. with the maximum Zoomscreen size.
  1450.  
  1451.     This work area sizing operation may be repeated as many times as
  1452. needed. If so, previously drawn boxes will be erased when a new work area
  1453. is sized.
  1454.  
  1455.     The work area selector box may be positioned by pushing with the
  1456. right mouse key depressed. (The mouse is now upsidedown so it can't be
  1457. dragging any more, can it?) The work area can be positioned on any pixel
  1458. boundary.
  1459.  
  1460.     Both operations can be repeated as many times as needed by the user.
  1461. The number of each, left mouse and right mouse operations, need not be
  1462. equal. On the first use of the set work screen option at least one left
  1463. mouse and right mouse operation must be performed, but on subsequent
  1464. returns to set work screen the currently selected work area size can be
  1465. positioned by right mouse operations alone.
  1466.  
  1467.     When the work area has been selected, it will be zoomed when the user
  1468. presses the Esc key.
  1469.  
  1470.     THE ZOOMSCREEEN:  The maximum area allowed for zoom operations is a
  1471. square placed at the left-hand boundary of the screen, a maximum of 62.5%
  1472. of the screen area. The number of pixels per side of the work area is not
  1473. rationalized to integer multiples of the magnification, so the zoom area
  1474. may be somewhat smaller than the maximum. It will always be presented at
  1475. the highest magnification possible, however.
  1476.  
  1477.     The magnification factor of the zoom ratio is shown just above the
  1478. view window in medium and high resolution. In low resolution, it is
  1479. displayed just below the menu button where, in the other resolutions,
  1480. free memory will be displayed. (In low resolution, this display may be
  1481. selected for zoom ratio or free memory display by pressing the "F" or "Z"
  1482. keys.)
  1483.  
  1484.     The enlarged, or zoom, pixels are presented on the zoomscreen in a
  1485. discontinuous rather than continuous format. Their appearance is rather
  1486. like electronic graph paper (more about graph paper later). The zoom
  1487. pixels are positionally correct; they are merely one pixel less wide than
  1488. the magnification ratio. (This looks less confusing than it sounds.)
  1489.  
  1490.     A grid may be superimposed on the pixels. SEURAT calculates the
  1491. luminousity of the background color and makes an arbitrary decision about
  1492. whether or not to grid the first zoom of the first work area. Following
  1493. this, the grid may be toggled on and off by keying the F1 (function) key
  1494. (the grid toggle may also be selected from the pop-out menu; see below).
  1495. SEURAT performs all subsequent zooms in conformity to the last grid
  1496. toggle made by the user.
  1497.  
  1498.     ZOOMSCREEN VIEW WINDOW: The Zoomscreen view window displays an
  1499. upright rectangle which reveals a portion of the paint screen, that
  1500. portion which surrounds the work area. The work area itself is marked
  1501. with an xor'ed box in the view window.
  1502.  
  1503.     The Zoomscreen's view window functions like the paint menu screen's
  1504. view window, but with some additional functions. The X and Y coordinates
  1505. of the upper-left-hand corner of the work area are displayed in the lower
  1506. view window border. (There is also a "Z" box which we'll talk about in a
  1507. minute.)
  1508.  
  1509.     To select a new work area, the user does not have to return to the
  1510. set work screen. The new work area can be selected and zoomed from the
  1511. Zoomscreen through the view window.
  1512.  
  1513.     The area to become the selected work area can be scrolled up, down,
  1514. left and right one pixel at a time by clicking on the directional arrows
  1515. in the corner boxes of the view window border. (Note: The arrows refer to
  1516. the direction of movement of the window, not the movement of the portion
  1517. of the image shown.)
  1518.  
  1519.     The work area can also be shifted much more rapidly by dragging with
  1520. the left mouse button on the vertical or horizontal sliders seen in the
  1521. upper and left-hand portions of the view window's border. (Note: The
  1522. sliders alone are not able to reach the last few pixels at the edge of
  1523. the paint screen, but the arrows can shift the work area to the very
  1524. edge.  In general some "fine tuning" by the arrows may be necessary for
  1525. precision positioning, if required.)
  1526.  
  1527.     The work area will remain centered in the view window and the paint
  1528. screen will be scrolled until such time as the boundaries of the image
  1529. are approached. Then, the work area will shift in the view window until
  1530. the edge of the paint screen is reached.
  1531.  
  1532.     You will note that with the first movement of the work area selection
  1533. frame on the view window, that "Z" box that we mentioned just a moment
  1534. ago became highlighted. This indicates that the reselection process has
  1535. made a new zoom a program requirement. While the "Z" box is highlighted,
  1536. no Zoomscreen functions are active except those that relate to work area
  1537. selection through the view window.
  1538.  
  1539.     This allows you to rove over the entire paint screen if necessary
  1540. without zooming each area you pass over. When the work area selection
  1541. frame is positioned as desired, a left mouse click on the "Z" box will
  1542. zoom the newly selected work area.
  1543.  
  1544.     During work area selection, the work area may be resized if needed.
  1545. Pressing the up arrow key in the cursor block causes the work area
  1546. selection frame to be enlarged one pixel at a time until the maximum
  1547. permissible size is reached. The down arrow key reduces the size of the
  1548. work area selection frame one pixel at a time until the 20-by-20-pixel
  1549. minimum size is reached.
  1550.  
  1551.     The work area selection frame expands and contacts in alternate
  1552. directions on alternate keypresses in order to keep the work area
  1553. centered on the same portion of the image.
  1554.  
  1555.     Resizing the work area without any other movement commands will 
  1556. also cause the "Z" box to highlight, requiring a new zoom.
  1557.  
  1558.     The "Z" box can clicked at any time to produce a zoom, whether 
  1559. required by the program or not. It will not highlight in these cases.
  1560.  
  1561.     RETURNING TO THE SET WORK SCREEN:  If you prefer to return to the set
  1562. work screen to select a work area, simply press the Esc key.
  1563.  
  1564.     DRAWING ON THE ZOOMSCREEN: The user may draw on the Zoomscreen with
  1565. both left and right mouse buttons, each in a different color. The
  1566. selected left and right mouse colors are shown at the top of the right-
  1567. hand portion of the Zoomscreen. Beneath each mouse color box is the RGB
  1568. (or CMY,depending on the color system selected) of the two mouse buttons.
  1569.  
  1570.     The right and left mouse colors are selected by clicking with the
  1571. right or left mouse buttons on the desired color in the color palette
  1572. display just above the view window. While it is a convenience to have two
  1573. colors simultaneously available to the mouse buttons without reselecting
  1574. in low resolution, it is virtually a requirement in high resolution if
  1575. one is to achieve a reasonable pace of work.
  1576.  
  1577.     While the mouse is on the zoomed pixel portion of the Zoomscreen, the
  1578. mouse is displayed in the last color either selected or printed to the
  1579. Zoomscreen. When the mouse traverses off the zoomed pixels, it is changed
  1580. to a crosshair.
  1581.  
  1582.     SETTING THE MOUSE FACTORS: SEURAT utilizes two program variables, the
  1583. mouse click delay factor and the mouse flicker delay factor. They may be
  1584. set by pressing the F6 key, which will call up a mouse factor dialog box.
  1585. The factors may be set from 0 to 99 by clicking on the arrows.  Exit the
  1586. dialog by a right mouseclick.
  1587.  
  1588.     The mouse flicker delay factor is a variable in the zoomscreen mouse
  1589. drawing routine that greatly reduces mouse flicker when drawing on the
  1590. Zoomscreen. It does not produce a totally flickerless mouse, but a
  1591. properly adjusted factor can cut out most of the printing and unprinting
  1592. of the mouse that GEM wants to do. The magnitude of the mouse flicker
  1593. variable determines how long the program waits for the mouse to move
  1594. before printing the clicked zoomed pixel to the Zoomscreen.
  1595.  
  1596.     I have set the default values of 27 for mouse flicker and 50 for
  1597. mouse click by trial and error, but one value does not work equally well
  1598. when running SEURAT as SEURAT.PRG and when running the code through the
  1599. interpreter or the run-only program, and you may wish to tinker with it.
  1600. Different magnification ratios and your mousing habits will also affect
  1601. the result.
  1602.  
  1603.     Likewise, SEURAT uses its own routine to read double mouse clicks,
  1604. rather than relying on GEM. This routine is configurable to read almost
  1605. any number of mouse clicks. (GEM has a terrible time trying to read
  1606. triple clicks, much less 4, 5...)
  1607.  
  1608.     If your double-click doesn't always register with SEURAT, your
  1609. clicking may be too slow. Increasing the mouse click delay factor allows
  1610. more time for a doubleclick to be read. Conversely, really fast mousers
  1611. might get three clicks in during the allotted time, which would produce
  1612. no result. Reduce the mouse click factor, but DO NOT SET IT AT ZERO!
  1613.  
  1614.     The default values are set whenever the program is loaded; the 
  1615. user's setting during the program are active only during the program
  1616. run 
  1617. and are not preserved. The time unit of these factors is 1 = 1/200th 
  1618. second.
  1619.  
  1620.     COLOR CHANGE FEATURE: If the Alt key is held down while the mouse
  1621. keys are also depressed, only pixels of a single color will be drawn to.
  1622. When the left mouse button is depressed with Alt, only pixels of the left
  1623. mouse color will be changed to the right mouse color. No other pixels
  1624. will be affected. Conversely, when the right mouse button is depressed
  1625. along with the Alt key, only pixels of the right mouse color will be
  1626. changed to the left mouse color.
  1627.  
  1628.     GRID COLOR:  When working in low resolution particularly, the color
  1629. of grid, when toggled, can greatly contribute to or detract from the
  1630. process of drawing on the Zoomscreen. Converting the grid color to the
  1631. color of one group of pixels solidifies those portions of the image and
  1632. throws the remaining pixel colors into greater contrast. The grid color
  1633. is selectable by the user.
  1634.  
  1635.     By pressing Shift and the F1 (function) key together, the mouse is
  1636. converted to the gridmouse. (The action point of this mouse is in the
  1637. center.) Click with the left mouse on the desired color from the color
  1638. palette display. Click with the right mouse to confirm your choice. A
  1639. grid of the selected color will be activated if the grid toggle is on. If
  1640. not, when it is toggled on, the grid will be displayed in the newly
  1641. selected color.
  1642.  
  1643.     Grid color selection may also be accomplished from the pop-out 
  1644. menu (see below).
  1645.     
  1646.     COLOR FLOOD:  The work area may be flooded with a single solid color
  1647. by double clicking on the desired color in the color palette display. The
  1648. work area may also be flooded with a single solid color by selecting the
  1649. desired color from the color palette display with the left mouse button
  1650. and then depressing the F4 (function) key.
  1651.  
  1652.     ERASURE AND UPDATE:  The Insert and Undo key system functions 
  1653. on the Zoomscreen in the same manner as it did on the paint screen.
  1654.  
  1655.     ABSOLUTE X-Y COORDINATES:  The absolute X-Y coordinates of any zoomed
  1656. pixel are shown with this function. By "absolute," SEURAT means the X and
  1657. Y coordinates of the source pixel in the paint screen, not the position
  1658. of the zoomed pixel on the Zoomscreen.
  1659.  
  1660.     To display the absolute coordinates, depress the F2 (function) key or
  1661. select the appropriate option from the pop-out menu (see below). The
  1662. mouse is converted to the brush crosshair cursor and the absolute
  1663. coordinates of the zoomed pixel the cursor is positioned on are shown in
  1664. the lower border of the view window where the coordinates of the upper-
  1665. left-hand corner of the work area were formerly displayed.
  1666.  
  1667.     To cancel the function and restore the work area coordinate display,
  1668. click with the right mouse key. No other operations are possible while
  1669. displaying absolute coordinates.
  1670.  
  1671.     VIEWING THE PAINT SCREEN:  A full-screen view of the paint screen may
  1672. be obtained by clicking the right mouse key while the mouse is inside the
  1673. borders of the view window. The user may also opt to view by depressing
  1674. the F7 (function) key. To return to the Zoomscreen, key Esc or click the
  1675. right mouse key. While the image is in the view mode, no mouse is
  1676. visible.
  1677.  
  1678.     RETURNING TO THE PAINT MENU:  Return to the paint menu screen by
  1679. pressing Clr/Home, or by selecting Paint from the pop-out menu.
  1680.  
  1681.     ZOOMSCREEN POP-OUT MENU: The menu button is located in the upper-
  1682. right-hand corner of the Zoomscreen. When the mouse enters the button, it
  1683. converted to the normal GEM mouse. Click on the menu to call the pop-out
  1684. menu. This menu functions identically with the pop-out menus on the paint
  1685. menu screen. The Zoomscreen menu contains most of the options listed
  1686. above.
  1687.  
  1688.     Additionally, it allows the user to erase the entire paint screen 
  1689. from within the Zoomscreen, to access the file function dialog box, to 
  1690. return to the paint menu screen, to access the palette editor, the 
  1691. transform and color map routines, to switch paint screens, and to quit.
  1692.  
  1693.     Originally, the Zoomscreen was the main procedure of SEURAT and the
  1694. paint menu was an off-shoot. I have turned things around somewhat to
  1695. conform to user's expectations of how a paint programs are usually
  1696. structured, but in practice, the user may operate as quickly and
  1697. efficiently out of the Zoomscreen as "home base" as out of the paint
  1698. menu. I do.
  1699.  
  1700.     When the user changes the paint screen through the Zoomscreen (either
  1701. by loading in a new image by means of the file function dialog or by
  1702. calling the screen selection dialog), the new image is substituted for
  1703. the existing one without exiting the Zoomscreen. That is, the new work
  1704. area, with the same size and screen coordinates as the previously
  1705. selected one, is displayed in the view window with its surrounding view
  1706. area and zoomed.
  1707.  
  1708.     When returning to the Zoomscreen from the paint menu or from
  1709. transforms or color map, the previously selected work area is updated
  1710. with any changes that have been made since the user left the Zoomscreen.
  1711. If the selected paint screen has been switched to another paint screen
  1712. than the one last selected while the user was in the Zoomscreen, the
  1713. newly selected paint screen is zoomed instead.
  1714.  
  1715.     The  ability to switch paint screens without altering any parameters
  1716. of the Zoomscreen allows the user to directly  compare corresponding
  1717. areas of differing versions of the same image stored in different paint
  1718. screens, for example.
  1719.  
  1720.     ALTERNATE ZOOM MODE:  The zoomed pixels may be displayed in two
  1721. modes: one, as explained above, and the alternative mode, in which the
  1722. zoomed pixels are printed to the screen in continuous contact with each
  1723. other.
  1724.  
  1725.     Drawn objects may be loosely and not exclusively catagorized along an
  1726. informal spectrum from geometric to naturalistic. Many of the color fills
  1727. are examples of geometrically drawn graphic objects, and a digitalized
  1728. photograph which consists of intensity contours is a good example of a
  1729. naturalistic object.
  1730.  
  1731.     Naturalistically drawn objects are much more easily modified when the
  1732. pixels are distinct and independent entities, as in SEURAT's normal zoom
  1733. mode. Geometric objects are more impressive when the zoomed pixels are
  1734. merged seamlessly.
  1735.  
  1736.     If the user holds down the Alt key while clicking on the "Z" box 
  1737. on the Zoomscreen view window to initiate a zoom, the resulting zoom
  1738. will 
  1739. be performed in the merged-pixel mode. The grid toggle will be turned
  1740. off, 
  1741. and no grid will be printed.
  1742.  
  1743.     The merged-pixel mode will remain in effect until the next time the
  1744. "Z" box is clicked. That is, if the user leaves the Zoomscreen in the
  1745. merged-pixel mode, and later returns to Zoomscreen, the zoom will be
  1746. performed in the merged-pixel mode. However, this alternative zoom mode
  1747. must be set again (by holding down the Alt key) whenever the "Z" box is
  1748. to be clicked again.
  1749.  
  1750.     The user may switch between the two zoom modes at any time by
  1751. clicking on the "Z" box (with or without the Alt key), whether or not a
  1752. zoom is required by the program. (Also, a merged-pixel display can be
  1753. converted to a normal-mode display, without changing the mode, by merely
  1754. toggling the F1 key to cut the pixels.)
  1755.  
  1756.     ALTERNATE KEYSTROKE COMMANDS:  Alternate keystroke commands are 
  1757. available for all of the functions listed on the pop-out menu. The 
  1758. following full list of keystroke commands are valid for use on the 
  1759. Zoomscreen:
  1760.  
  1761.     Esc = Set work screen 
  1762.     Insert = Update restore 
  1763.     Undo = Restore work area 
  1764.     Clr/Home = Paint menu screen 
  1765.     Up Arrow = Enlarge work area 
  1766.     Down Arrow = Shrink work area 
  1767.     f1 = Grid toggle on/off 
  1768.     f2 = Abs. X-Y coordinates 
  1769.     f3 = 20x20 mode toggle 
  1770.     f4 = Flood with left mouse color 
  1771.     f5 = Set color palette
  1772.     f6 = Set mouse factors for flicker and double click 
  1773.     f7 = View image 
  1774.     f9 = File functions 
  1775.     Shift-f1 = Set grid color 
  1776.     Shift-f4 = Screen transforms
  1777.     Shift-f5 = Erase screen 
  1778.     Shift-f8 = Select screen 
  1779.     Shift-f9 = Color map
  1780.  
  1781.     THE TWENTY-TWENTY MODE: When the user toggles the Zoomscreen into the
  1782. 20x20 mode, the work area is reselected to the minimum size, 20 by 20
  1783. pixels. Moreover, this work area is placed on the nearest pixel boundary
  1784. that is modular with respect to its size, that is, with X and Y
  1785. coordinates of 0,20,40,60,80... and so forth.
  1786.  
  1787.     While in the 20x20 mode, the directional arrows shift the work area
  1788. by units of 20 in all directions, rather than by one pixel at a time.
  1789. The coordinate display in the lower border of the view window is
  1790. expressed in horizontal and vertical modules of 20 pixels (H=3 V=2 is the
  1791. same as X=20 Y=10). The up arrow and down arrow cursor keys will not
  1792. resize the work area.
  1793.  
  1794.     If the user returns to the set work screen in the 20x20 mode, the
  1795. cursor is a 20/20 mouse, the work area selection box moves only in
  1796. modular jumps of 20-pixel intervals aligned on horz. and vert. modular
  1797. boundaries, etc.
  1798.  
  1799.     When the 20x20 mode is canceled by reselecting the toggle from the
  1800. menu or keying F3 again, the work area remains the minimum 20-pixel size,
  1801. but may be resized, moved, and altered from the view window or the set
  1802. work screen as before. The work area coordinate display returns to X and
  1803. Y coordinates, the arrows move the work area one pixel at a time, etc.
  1804.  
  1805.     You may have noticed that in the normal zoom mode there are some
  1806. spaced-out grid lines that are printed in color O, whatever the grid
  1807. color may be. They represent the X and Y coordinates of the paint screen
  1808. that are modular to 20 pixels in height and width. An area enclosed by
  1809. such grid lines is an area which can be selected as a whole in the 20x20
  1810. mode.
  1811.  
  1812.     The 20x20 mode, used in conjunction with preplotted graph paper
  1813. drawings, is the best method to take fullest advantage of the remarkable
  1814. resolution offered by the Atari SM124 monochrome monitor.  In any
  1815. resolution, it offers the most precise method of transfering preplanned
  1816. graphics to the screen.
  1817.  
  1818.               SCREEN TRANSFORMS
  1819.  
  1820.     The screen transform routines perform a variety of geometric 
  1821. transformations of entire paint screens.
  1822.  
  1823.     By geometric transformations, SEURAT refers to those manipulations of
  1824. the image that can be performed with completely mutual one-to-one
  1825. correspondance between the original and transformed pixel locations.
  1826. That is, one and only one destination for each pixel to be moved, and one
  1827. and only one pixel for each destination to which pixels are to be moved.
  1828.  
  1829.     Technically, this requirement is also true for some of the block
  1830. manipulations such as skew, arc, and freeform. However, for a
  1831. manipulation such as rotation or resize, such is not the case. An
  1832. attempted one-to-one rotation procedure will leave the finished image
  1833. full of "holes" where no pixel was placed and overwrites at locations
  1834. where more than one pixel was placed, due to rounding and floating point
  1835. errors, inaccuracies in the trancendential functions, and so on.
  1836.  
  1837.     These screen transformations are designed to commit no (or little)
  1838. damage to the original pixels and their relationship with each other
  1839. (whatever their orientation). (Precision requires every pixel it can
  1840. get!)
  1841.  
  1842.     They are performed on whole screens (or as much of a screen as
  1843. possible), but they may be utilized as a class of block manipulations by
  1844. performing them on a copy of a paint screen and transfering portions of
  1845. the "transformed" image back to the original paint screen as blocks.  Or,
  1846. a block may be "pasted" to an unused paint screen and be brought to
  1847. transforms to be manipulated.
  1848.  
  1849.     The transforms may be used to manipulate or reorient whole screens
  1850. in a quick and effective manner. These routines also include a set of
  1851. symmetry functions that will create singly or multiply mirrored images.
  1852.  
  1853.     The functions and features of the transform routines are as 
  1854. follows:
  1855.  
  1856.     THE TRANSFORMS MENU:  The transforms menu is a drop-down menu which
  1857. is toggled on and off by the program as required and by the user as
  1858. desired. A right mouse key click prints and unprints the menu. Moving the
  1859. small crosshair cursor to the heading of either menu panel causes it to
  1860. drop down. Unlike a conventional GEM menu, if the mouse leaves the menu
  1861. panel without selecting, the menu panel will pop back up out of sight.
  1862.  
  1863.     A frame cursor follows the mouse cursor from item to item. An item is
  1864. selected by a left mouse click. One menu item, the chain feature (see
  1865. below), is toggled on and off by left mouse clicks. When CHAIN is
  1866. highlighted, it is on.
  1867.  
  1868.     CHAIN: When chain is active, each transformation the user selects is
  1869. performed on the outcome of the previous operation, if any. When chain is
  1870. off, each operation is performed on the original screen with which the
  1871. user entered the transforms routine. To abort a series of chained
  1872. operations and begin a new sequence of chained operations, simply toggle
  1873. chain off and on again.
  1874.  
  1875.     Chain functions somewhat differently when used with the two 
  1876. rotation operations. Consult the appropriate section below.
  1877.  
  1878.     TRANSFORMS CURSOR: Some transform operations utilize an additional
  1879. cursor, the full-screen crosshair. They are: the four mirror operations
  1880. and the two rotations. The function of this cursor is explained in each
  1881. relevant section below.
  1882.  
  1883.     FLIP: Reverses the screen from left to right, a "mirror" image in 
  1884. the sense that it presents the way the original screen would look if 
  1885. viewed in a mirror.
  1886.  
  1887.     INVERT:  Turns the screen upside-down. (Note: The combination, or
  1888. chaining, of a flip and an invert constitutes a 180-degree rotation.)
  1889.  
  1890.     ROTATION 90° CLOCKWISE: This routine acts only on user-selected
  1891. screen portions that constitute a square. The remainder of the image is
  1892. erased before the operation is performed. The screen returned after the
  1893. operation contains only the rotated screen portion. In that sense, the
  1894. procedure is very much like the routines included on the block menu.  But
  1895. unlike the rotation algorithm used in the block rotation, this procedure
  1896. meets the criteria for a truly geometric operation.
  1897.  
  1898.     However, the pixels on the ST monitors are approximately 10% higher
  1899. than they are wide, thus distorting the final appearance of an uniform
  1900. transformation.  Therefore, an adjustment for pixel aspect ratio is
  1901. included in the routine as the default condition, improving the result
  1902. considerably for naturalistically drawn objects.
  1903.  
  1904.     However, this same adjustment distorts the regularity of geometric
  1905. graphic objects. By holding down the Alt key while clicking on this
  1906. option on the menu,  the operation will be performed without any
  1907. compensation for pixel aspect ratio.
  1908.  
  1909.     The full-screen crosshair cursor that appears after the user clicks
  1910. on this option from the menu allows the selection of a square screen
  1911. portion of any size up to the full height of the screen. Place the cursor
  1912. on the upper-left-hand corner of the area to be selected and, depressing
  1913. the left mouse key and holding it down, drag the box that will be printed
  1914. to the screen to the size desired. When the left mouse key is released
  1915. the operation will be performed.
  1916.  
  1917.     Since the rotation operation discards the portion of the screen not
  1918. involved in the rotation, inclusion of a rotation in a sequence of
  1919. chained operations necessarily voids that portion of the previous results
  1920. that lies outside the selected screen area. Commencing a chain of
  1921. operations with the rotation of a large screen area minimizes the area
  1922. loss, but the user will find that the transform operations are quite as
  1923. useful on small screen areas as on entire screens, if not more so.
  1924.  
  1925.     This operation is somewhat slow if it is performed on the largest
  1926. possible area, but it's not irksome when performed on small or
  1927. moderate-sized areas. Be patient; remember, this program's first criteria
  1928. is accuracy and precision; speed comes second... OK, OK, a close second.
  1929. Besides, I kind of like watching the square twirl around inside itself.
  1930.  
  1931.     ROTATION 90° ANTI-CLOCKWISE: This routine is absolutely identical
  1932. with clockwise rotation in every regard except for the direction of the
  1933. process. All commands and options are the same.
  1934.  
  1935.     (180-degree rotations can be accomplished by chaining a flip and 
  1936. an invert operation.)
  1937.  
  1938.     MIRROR  OPERATIONS:  The four mirror transforms produce  a
  1939. "reflection" of one screen area in another area of the screen. One may
  1940. produce a screen in which the left-hand-side mirrors the portion of the
  1941. image in the right-hand-side, or vice versa. Also, the top portion of a
  1942. screen may be mirrored in the bottom, or vice versa.
  1943.  
  1944.     A single-line cursor is displayed, either a vertical or a horizontal
  1945. line depending on the intersection of the reflection to be performed. The
  1946. cursor should be placed where this intersection is desired and the left
  1947. mouse clicked to perform the operation.
  1948.  
  1949.     If the user depresses the Esc key instead (regardless of the cursor
  1950. placement), the operation will be performed with the horizontal or
  1951. vertical mid-point of the screen as the axis of relection.
  1952.  
  1953.     SCROLLING OPERATIONS:  These operations scroll the entire screen
  1954. left, right, up or down, as selected by pressing one of the four cursor
  1955. arrow keys. The screen is scrolled in the direction of the key pressed by
  1956. the current scroll set factor (default is one pixel). The scroll
  1957. functions are terminated by a right mouse click, which restores the menu.
  1958.  
  1959.     SET SCROLL STEP:  The vertical scroll operations function very
  1960. rapidly, the horizontal scrolls less so. This option allows the number of
  1961. pixels by which the screen is shifted to be increased from the default of
  1962. one pixel at a time. The maximum value is eight pixels.
  1963.  
  1964.     EXIT:  The transform routine may be exited returning the current
  1965. transformed screen ("New Image") or all operations performed may be
  1966. aborted ("Old Image"), in which the original screen is returned
  1967. unaltered.
  1968.  
  1969.                 COLOR MAP
  1970.  
  1971.     The color map routine allows pixels of a given color number to be
  1972. transformed into pixels of another color number. Up to the full number of
  1973. colors available in a given resolution may be modified in a single pass.
  1974.  
  1975.     COLOR MAP DIALOG BOX: The color map dialog box displays two rows of
  1976. color boxes containing each color of the palette connected in a
  1977. one-to-one correspondence. (The color numbers are displayed in
  1978. hexadecimal because of space restrictions.) When the user clicks with the
  1979. left mouse key on any box in the upper, or source, row, the connecting
  1980. bar will be unprinted.
  1981.  
  1982.     By clicking on any color box in the lower, or destination, row, the
  1983. connecting bar will be redrawn to that box to show the color change
  1984. sequence to be performed. The color box of the source row is redrawn in
  1985. the destination color selected.
  1986.  
  1987.     This procedure may be repeated for any or all colors in the current
  1988. palette before commencing the operation.
  1989.  
  1990.     The reset button cancels all selections and redraws the color map
  1991. dialog box.
  1992.  
  1993.     Clicking on "Select Area" displays the paint screen and the full-
  1994. screen crosshair cursor. Dragging with the left mouse key selects the
  1995. area to be remapped. The operation is performed when the left mouse key
  1996. is released.
  1997.  
  1998.     Clicking on the Whole Screen option causes the remapping to be 
  1999. performed on the entire paint screen.
  2000.  
  2001.     When the operation is complete the user is presented with an alert
  2002. offering three options: to continue with another color-mapping operation
  2003. ("Again"), to return the current result ("New"), or to abort the result
  2004. and exit the procedure ("Old").
  2005.  
  2006.     Choosing the "Again" option preserves previously selected color
  2007. mappings in force unless the reset button is clicked. Use with "Select
  2008. Area" only, as "Whole Screen" would produce no further result.
  2009.  
  2010.  
  2011.                DISK INFORMATION
  2012.  
  2013.     For SEURAT to run, it must have the file SEURAT.DAT, which is
  2014. normally present on the root directory of the disk from which the program
  2015. is loaded. If the SEURAT.DAT is not present, an alert will give the user
  2016. the option of changing disks and retrying to access the data file. The
  2017. other option is to abort the program and return to the Desktop.
  2018.  
  2019.     PRINTING IMAGES: There is no specific hardcopy routine in SEURAT.
  2020. Simply go to a view of the image which has no mouse on screen (the view
  2021. modes) and press the Alt and Help keys together. The quality of the
  2022. print-out will depend on the print driver you have installed. If your
  2023. printer is not turned on or is not online, the program will hang up for
  2024. 30 to 40 seconds, then resume. Don't panic and turn the ST off, OK?
  2025.  
  2026.     IMAGE CONVERSION AND COMPRESSION: SEURAT will not load compressed
  2027. images, nor compress images for storage, nor will it convert from one
  2028. picture format to another nor from one resolution to another (I had to
  2029. leave out something!).
  2030.  
  2031.     There are a number of very good conversion and compression utilities
  2032. in the public domain. Use them.
  2033.  
  2034.                ERROR MESSAGES
  2035.  
  2036.     SEURAT.PRG will terminate upon error, however, a GFA BASIC error 
  2037. message will be displayed first. It is almost certain to be "Not Enough
  2038. Memory!"
  2039.  
  2040.               PROGRAMMING NOTES
  2041.  
  2042.     SEURAT is programmed in GFA BASIC, a product of GFA Systemtechnik,
  2043. distributed in the U.S.A. by MichTron. I'd like to add: Thanks!  A BASIC
  2044. in which one can write a program of this length and complexity without
  2045. horrendous results (even if I did fall asleep nights with rows of bombs
  2046. dancing across the under-surface of my eyelids) is deserving of high
  2047. praise indeed.
  2048.  
  2049.     RUNNING SEURAT UNDER THE GFA BASIC INTERPRETER: At the very 
  2050. beginning of the program, it is useful to to insert a line ("On Break 
  2051. Gosub End") immediately after the On Error statement (2nd line). At the
  2052. very end of the program, change the last line in the Procedure End 
  2053. subroutine from "System" to "Edit."
  2054.  
  2055.                 ODDS'N'ENDS
  2056.  
  2057.     SEURAT is dedicated to Georges Pierre Seurat (1859-1891), the 
  2058. Father of the Pixel. May their numbers increase!
  2059.  
  2060.     QUESTIONS AND ANSWERS:  Are there any bugs in SEURAT? Yes, two 
  2061. Busy Bees and a Lady Bug, in the Fills.
  2062.  
  2063.     MORE QUESTIONS AND ANSWERS:  What are those funny looking red 
  2064. bombs in the default color fill? Don't ask...
  2065.  
  2066.     LAST MINUTE HINTS:  Don't click on paint functions "on the fly," that
  2067. is, while rapidly scooting the mouse around (I'm guilty of this a lot
  2068. myself). The paint menu screen is one long, long, long loop, and once in
  2069. a while the mouse may be read after you've moved it out of the button
  2070. box, thus selecting and highlighing the wrong function.
  2071.  
  2072.     Occasionally, you may also find that an extra right mouse click (or
  2073. two or three or...) is required when returning from a complex series of
  2074. operations, in order to switch from the paint menu screen to paint
  2075. screen.  This is caused by recursive nesting, and you have to back up out
  2076. of the loops.
  2077.  
  2078.       ------------------------------------
  2079.  
  2080.     GEM is a Trademark of Digital Research, Inc.
  2081.     ATARI 1040ST, 520ST and Neochrome are Trademarks of
  2082.     the Atari Corp.
  2083.     DEGAS is a Trademark of Electronic Arts, Inc.
  2084.     GFA BASIC is a Trademark of GFA Systemtechnik. 
  2085.     SEURAT is a Trademark of SKWare One, Inc.
  2086.  
  2087.  
  2088.  
  2089.